From 6888133409d87277e1a05bfc6550bbd85b5ebb7b Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 16:39:20 +0000 Subject: [PATCH 01/32] chore: update librarian.yaml; post processing; use root mypy.ini --- .../bigtable-integration.yaml | 46 ----------------- .../datastore-integration.yaml | 36 -------------- librarian.yaml | 2 +- packages/bigframes/mypy.ini | 49 ------------------- packages/bigquery-magics/mypy.ini | 3 -- packages/gapic-generator/mypy.ini | 2 - packages/google-ads-admanager/mypy.ini | 15 ------ packages/google-ads-datamanager/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-ai-generativelanguage/mypy.ini | 15 ------ packages/google-analytics-admin/mypy.ini | 15 ------ packages/google-analytics-data/mypy.ini | 15 ------ packages/google-apps-card/mypy.ini | 15 ------ packages/google-apps-chat/mypy.ini | 15 ------ .../google-apps-events-subscriptions/mypy.ini | 15 ------ packages/google-apps-meet/mypy.ini | 15 ------ packages/google-apps-script-type/mypy.ini | 15 ------ packages/google-area120-tables/mypy.ini | 15 ------ packages/google-auth/mypy.ini | 3 -- packages/google-backstory/mypy.ini | 15 ------ .../google-cloud-access-approval/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-agentregistry/mypy.ini | 15 ------ .../google-cloud-alloydb-connectors/mypy.ini | 15 ------ packages/google-cloud-alloydb/mypy.ini | 15 ------ packages/google-cloud-api-gateway/mypy.ini | 15 ------ packages/google-cloud-api-keys/mypy.ini | 15 ------ packages/google-cloud-apigee-connect/mypy.ini | 15 ------ .../google-cloud-apigee-registry/mypy.ini | 15 ------ packages/google-cloud-apihub/mypy.ini | 15 ------ packages/google-cloud-apiregistry/mypy.ini | 15 ------ .../google-cloud-appengine-admin/mypy.ini | 15 ------ .../google-cloud-appengine-logging/mypy.ini | 15 ------ packages/google-cloud-apphub/mypy.ini | 15 ------ packages/google-cloud-appoptimize/mypy.ini | 15 ------ .../google-cloud-artifact-registry/mypy.ini | 15 ------ packages/google-cloud-asset/mypy.ini | 15 ------ .../google-cloud-assured-workloads/mypy.ini | 15 ------ packages/google-cloud-auditmanager/mypy.ini | 15 ------ packages/google-cloud-automl/mypy.ini | 15 ------ packages/google-cloud-backupdr/mypy.ini | 15 ------ .../google-cloud-bare-metal-solution/mypy.ini | 15 ------ packages/google-cloud-batch/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-biglake-hive/mypy.ini | 15 ------ packages/google-cloud-biglake/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-cloud-bigquery-biglake/mypy.ini | 15 ------ .../google-cloud-bigquery-connection/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-cloud-bigquery-logging/mypy.ini | 15 ------ .../google-cloud-bigquery-migration/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-cloud-bigquery-storage/mypy.ini | 15 ------ packages/google-cloud-bigquery/mypy.ini | 3 -- packages/google-cloud-bigtable/mypy.ini | 38 -------------- .../google-cloud-billing-budgets/mypy.ini | 15 ------ packages/google-cloud-billing/mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-build/mypy.ini | 15 ------ .../google-cloud-capacityplanner/mypy.ini | 15 ------ .../google-cloud-certificate-manager/mypy.ini | 15 ------ packages/google-cloud-ces/mypy.ini | 15 ------ packages/google-cloud-channel/mypy.ini | 15 ------ packages/google-cloud-chronicle/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-common/mypy.ini | 15 ------ packages/google-cloud-compute-v1beta/mypy.ini | 15 ------ packages/google-cloud-compute/mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-config/mypy.ini | 15 ------ packages/google-cloud-configdelivery/mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-container/mypy.ini | 15 ------ .../google-cloud-containeranalysis/mypy.ini | 15 ------ .../google-cloud-contentwarehouse/mypy.ini | 15 ------ packages/google-cloud-core/mypy.ini | 7 --- packages/google-cloud-data-fusion/mypy.ini | 15 ------ packages/google-cloud-data-qna/mypy.ini | 15 ------ packages/google-cloud-databasecenter/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-cloud-datacatalog-lineage/mypy.ini | 15 ------ packages/google-cloud-datacatalog/mypy.ini | 15 ------ .../google-cloud-dataflow-client/mypy.ini | 15 ------ packages/google-cloud-dataform/mypy.ini | 15 ------ packages/google-cloud-datalabeling/mypy.ini | 15 ------ packages/google-cloud-dataplex/mypy.ini | 15 ------ .../google-cloud-dataproc-metastore/mypy.ini | 15 ------ packages/google-cloud-dataproc/mypy.ini | 15 ------ packages/google-cloud-datastore/mypy.ini | 23 --------- packages/google-cloud-datastream/mypy.ini | 15 ------ packages/google-cloud-deploy/mypy.ini | 15 ------ .../google-cloud-developerconnect/mypy.ini | 15 ------ .../google-cloud-devicestreaming/mypy.ini | 15 ------ packages/google-cloud-dialogflow-cx/mypy.ini | 15 ------ packages/google-cloud-dialogflow/mypy.ini | 15 ------ .../google-cloud-discoveryengine/mypy.ini | 15 ------ packages/google-cloud-dlp/mypy.ini | 15 ------ packages/google-cloud-dms/mypy.ini | 15 ------ packages/google-cloud-documentai/mypy.ini | 15 ------ packages/google-cloud-domains/mypy.ini | 15 ------ packages/google-cloud-edgecontainer/mypy.ini | 15 ------ packages/google-cloud-edgenetwork/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-cloud-error-reporting/mypy.ini | 15 ------ .../google-cloud-essential-contacts/mypy.ini | 15 ------ .../google-cloud-eventarc-publishing/mypy.ini | 15 ------ packages/google-cloud-eventarc/mypy.ini | 15 ------ packages/google-cloud-filestore/mypy.ini | 15 ------ .../google-cloud-financialservices/mypy.ini | 15 ------ packages/google-cloud-firestore/mypy.ini | 15 ------ packages/google-cloud-functions/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-cloud-geminidataanalytics/mypy.ini | 15 ------ packages/google-cloud-gke-backup/mypy.ini | 15 ------ .../google-cloud-gke-connect-gateway/mypy.ini | 15 ------ packages/google-cloud-gke-hub/mypy.ini | 15 ------ packages/google-cloud-gke-multicloud/mypy.ini | 15 ------ packages/google-cloud-gkerecommender/mypy.ini | 15 ------ packages/google-cloud-gsuiteaddons/mypy.ini | 15 ------ .../google-cloud-hypercomputecluster/mypy.ini | 15 ------ packages/google-cloud-iam-logging/mypy.ini | 15 ------ packages/google-cloud-iam/mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-iap/mypy.ini | 15 ------ packages/google-cloud-ids/mypy.ini | 15 ------ packages/google-cloud-kms-inventory/mypy.ini | 15 ------ packages/google-cloud-kms/mypy.ini | 15 ------ packages/google-cloud-language/mypy.ini | 15 ------ packages/google-cloud-licensemanager/mypy.ini | 15 ------ packages/google-cloud-life-sciences/mypy.ini | 15 ------ packages/google-cloud-locationfinder/mypy.ini | 15 ------ packages/google-cloud-logging/mypy.ini | 15 ------ packages/google-cloud-lustre/mypy.ini | 15 ------ .../google-cloud-maintenance-api/mypy.ini | 15 ------ .../google-cloud-managed-identities/mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-managedkafka/mypy.ini | 15 ------ .../google-cloud-media-translation/mypy.ini | 15 ------ packages/google-cloud-memcache/mypy.ini | 15 ------ packages/google-cloud-memorystore/mypy.ini | 15 ------ .../google-cloud-migrationcenter/mypy.ini | 15 ------ packages/google-cloud-modelarmor/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-monitoring/mypy.ini | 15 ------ packages/google-cloud-netapp/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-cloud-network-management/mypy.ini | 15 ------ .../google-cloud-network-security/mypy.ini | 15 ------ .../google-cloud-network-services/mypy.ini | 15 ------ packages/google-cloud-notebooks/mypy.ini | 15 ------ packages/google-cloud-optimization/mypy.ini | 15 ------ packages/google-cloud-oracledatabase/mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-org-policy/mypy.ini | 15 ------ packages/google-cloud-os-config/mypy.ini | 15 ------ packages/google-cloud-os-login/mypy.ini | 15 ------ packages/google-cloud-parallelstore/mypy.ini | 15 ------ .../google-cloud-parametermanager/mypy.ini | 15 ------ .../google-cloud-phishing-protection/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-cloud-policysimulator/mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-private-ca/mypy.ini | 15 ------ .../google-cloud-private-catalog/mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-pubsub/mypy.ini | 15 ------ packages/google-cloud-quotas/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-cloud-recommendations-ai/mypy.ini | 15 ------ packages/google-cloud-recommender/mypy.ini | 15 ------ packages/google-cloud-redis-cluster/mypy.ini | 15 ------ packages/google-cloud-redis/mypy.ini | 15 ------ .../google-cloud-resource-manager/mypy.ini | 15 ------ packages/google-cloud-retail/mypy.ini | 15 ------ packages/google-cloud-run/mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-scheduler/mypy.ini | 15 ------ packages/google-cloud-secret-manager/mypy.ini | 15 ------ .../google-cloud-securesourcemanager/mypy.ini | 15 ------ .../google-cloud-security-publicca/mypy.ini | 15 ------ packages/google-cloud-securitycenter/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-cloud-service-control/mypy.ini | 15 ------ .../google-cloud-service-directory/mypy.ini | 15 ------ .../google-cloud-service-management/mypy.ini | 15 ------ packages/google-cloud-service-usage/mypy.ini | 15 ------ packages/google-cloud-servicehealth/mypy.ini | 15 ------ packages/google-cloud-shell/mypy.ini | 15 ------ packages/google-cloud-source-context/mypy.ini | 15 ------ .../mypy.ini | 15 ------ packages/google-cloud-spanner/mypy.ini | 15 ------ packages/google-cloud-speech/mypy.ini | 15 ------ .../google-cloud-storage-control/mypy.ini | 15 ------ .../google-cloud-storage-transfer/mypy.ini | 15 ------ packages/google-cloud-storage/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-cloud-storageinsights/mypy.ini | 15 ------ packages/google-cloud-support/mypy.ini | 15 ------ packages/google-cloud-talent/mypy.ini | 15 ------ packages/google-cloud-tasks/mypy.ini | 15 ------ .../google-cloud-telcoautomation/mypy.ini | 15 ------ packages/google-cloud-testutils/mypy.ini | 3 -- packages/google-cloud-texttospeech/mypy.ini | 15 ------ packages/google-cloud-tpu/mypy.ini | 15 ------ packages/google-cloud-trace/mypy.ini | 15 ------ packages/google-cloud-translate/mypy.ini | 15 ------ packages/google-cloud-vectorsearch/mypy.ini | 15 ------ .../google-cloud-video-live-stream/mypy.ini | 15 ------ packages/google-cloud-video-stitcher/mypy.ini | 15 ------ .../google-cloud-video-transcoder/mypy.ini | 15 ------ .../google-cloud-videointelligence/mypy.ini | 15 ------ packages/google-cloud-vision/mypy.ini | 15 ------ packages/google-cloud-visionai/mypy.ini | 15 ------ packages/google-cloud-vm-migration/mypy.ini | 15 ------ packages/google-cloud-vmwareengine/mypy.ini | 15 ------ packages/google-cloud-vpc-access/mypy.ini | 15 ------ packages/google-cloud-webrisk/mypy.ini | 15 ------ .../google-cloud-websecurityscanner/mypy.ini | 15 ------ packages/google-cloud-workflows/mypy.ini | 15 ------ .../google-cloud-workloadmanager/mypy.ini | 15 ------ packages/google-cloud-workstations/mypy.ini | 15 ------ packages/google-crc32c/mypy.ini | 3 -- packages/google-developer-knowledge/mypy.ini | 15 ------ .../google-devicesandservices-health/mypy.ini | 15 ------ packages/google-geo-type/mypy.ini | 15 ------ .../google-maps-addressvalidation/mypy.ini | 15 ------ packages/google-maps-areainsights/mypy.ini | 15 ------ .../google-maps-fleetengine-delivery/mypy.ini | 15 ------ packages/google-maps-fleetengine/mypy.ini | 15 ------ packages/google-maps-geocode/mypy.ini | 15 ------ packages/google-maps-mapmanagement/mypy.ini | 15 ------ .../google-maps-mapsplatformdatasets/mypy.ini | 15 ------ packages/google-maps-navconnect/mypy.ini | 15 ------ packages/google-maps-places/mypy.ini | 15 ------ .../google-maps-routeoptimization/mypy.ini | 15 ------ packages/google-maps-routing/mypy.ini | 15 ------ packages/google-maps-solar/mypy.ini | 15 ------ packages/google-resumable-media/mypy.ini | 3 -- packages/google-shopping-css/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-shopping-merchant-lfp/mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../mypy.ini | 15 ------ .../google-shopping-merchant-quota/mypy.ini | 15 ------ .../google-shopping-merchant-reports/mypy.ini | 15 ------ .../google-shopping-merchant-reviews/mypy.ini | 15 ------ packages/google-shopping-type/mypy.ini | 15 ------ packages/grafeas/mypy.ini | 15 ------ 267 files changed, 1 insertion(+), 4015 deletions(-) delete mode 100644 packages/bigframes/mypy.ini delete mode 100644 packages/bigquery-magics/mypy.ini delete mode 100644 packages/gapic-generator/mypy.ini delete mode 100644 packages/google-ads-admanager/mypy.ini delete mode 100644 packages/google-ads-datamanager/mypy.ini delete mode 100644 packages/google-ads-marketingplatform-admin/mypy.ini delete mode 100644 packages/google-ai-generativelanguage/mypy.ini delete mode 100644 packages/google-analytics-admin/mypy.ini delete mode 100644 packages/google-analytics-data/mypy.ini delete mode 100644 packages/google-apps-card/mypy.ini delete mode 100644 packages/google-apps-chat/mypy.ini delete mode 100644 packages/google-apps-events-subscriptions/mypy.ini delete mode 100644 packages/google-apps-meet/mypy.ini delete mode 100644 packages/google-apps-script-type/mypy.ini delete mode 100644 packages/google-area120-tables/mypy.ini delete mode 100644 packages/google-auth/mypy.ini delete mode 100644 packages/google-backstory/mypy.ini delete mode 100644 packages/google-cloud-access-approval/mypy.ini delete mode 100644 packages/google-cloud-advisorynotifications/mypy.ini delete mode 100644 packages/google-cloud-agentidentitycredentials/mypy.ini delete mode 100644 packages/google-cloud-agentregistry/mypy.ini delete mode 100644 packages/google-cloud-alloydb-connectors/mypy.ini delete mode 100644 packages/google-cloud-alloydb/mypy.ini delete mode 100644 packages/google-cloud-api-gateway/mypy.ini delete mode 100644 packages/google-cloud-api-keys/mypy.ini delete mode 100644 packages/google-cloud-apigee-connect/mypy.ini delete mode 100644 packages/google-cloud-apigee-registry/mypy.ini delete mode 100644 packages/google-cloud-apihub/mypy.ini delete mode 100644 packages/google-cloud-apiregistry/mypy.ini delete mode 100644 packages/google-cloud-appengine-admin/mypy.ini delete mode 100644 packages/google-cloud-appengine-logging/mypy.ini delete mode 100644 packages/google-cloud-apphub/mypy.ini delete mode 100644 packages/google-cloud-appoptimize/mypy.ini delete mode 100644 packages/google-cloud-artifact-registry/mypy.ini delete mode 100644 packages/google-cloud-asset/mypy.ini delete mode 100644 packages/google-cloud-assured-workloads/mypy.ini delete mode 100644 packages/google-cloud-auditmanager/mypy.ini delete mode 100644 packages/google-cloud-automl/mypy.ini delete mode 100644 packages/google-cloud-backupdr/mypy.ini delete mode 100644 packages/google-cloud-bare-metal-solution/mypy.ini delete mode 100644 packages/google-cloud-batch/mypy.ini delete mode 100644 packages/google-cloud-beyondcorp-appconnections/mypy.ini delete mode 100644 packages/google-cloud-beyondcorp-appconnectors/mypy.ini delete mode 100644 packages/google-cloud-beyondcorp-appgateways/mypy.ini delete mode 100644 packages/google-cloud-beyondcorp-clientconnectorservices/mypy.ini delete mode 100644 packages/google-cloud-beyondcorp-clientgateways/mypy.ini delete mode 100644 packages/google-cloud-biglake-hive/mypy.ini delete mode 100644 packages/google-cloud-biglake/mypy.ini delete mode 100644 packages/google-cloud-bigquery-analyticshub/mypy.ini delete mode 100644 packages/google-cloud-bigquery-biglake/mypy.ini delete mode 100644 packages/google-cloud-bigquery-connection/mypy.ini delete mode 100644 packages/google-cloud-bigquery-data-exchange/mypy.ini delete mode 100644 packages/google-cloud-bigquery-datapolicies/mypy.ini delete mode 100644 packages/google-cloud-bigquery-datatransfer/mypy.ini delete mode 100644 packages/google-cloud-bigquery-logging/mypy.ini delete mode 100644 packages/google-cloud-bigquery-migration/mypy.ini delete mode 100644 packages/google-cloud-bigquery-reservation/mypy.ini delete mode 100644 packages/google-cloud-bigquery-storage/mypy.ini delete mode 100644 packages/google-cloud-bigquery/mypy.ini delete mode 100644 packages/google-cloud-bigtable/mypy.ini delete mode 100644 packages/google-cloud-billing-budgets/mypy.ini delete mode 100644 packages/google-cloud-billing/mypy.ini delete mode 100644 packages/google-cloud-binary-authorization/mypy.ini delete mode 100644 packages/google-cloud-build/mypy.ini delete mode 100644 packages/google-cloud-capacityplanner/mypy.ini delete mode 100644 packages/google-cloud-certificate-manager/mypy.ini delete mode 100644 packages/google-cloud-ces/mypy.ini delete mode 100644 packages/google-cloud-channel/mypy.ini delete mode 100644 packages/google-cloud-chronicle/mypy.ini delete mode 100644 packages/google-cloud-cloudcontrolspartner/mypy.ini delete mode 100644 packages/google-cloud-cloudsecuritycompliance/mypy.ini delete mode 100644 packages/google-cloud-commerce-consumer-procurement/mypy.ini delete mode 100644 packages/google-cloud-common/mypy.ini delete mode 100644 packages/google-cloud-compute-v1beta/mypy.ini delete mode 100644 packages/google-cloud-compute/mypy.ini delete mode 100644 packages/google-cloud-confidentialcomputing/mypy.ini delete mode 100644 packages/google-cloud-config/mypy.ini delete mode 100644 packages/google-cloud-configdelivery/mypy.ini delete mode 100644 packages/google-cloud-contact-center-insights/mypy.ini delete mode 100644 packages/google-cloud-container/mypy.ini delete mode 100644 packages/google-cloud-containeranalysis/mypy.ini delete mode 100644 packages/google-cloud-contentwarehouse/mypy.ini delete mode 100644 packages/google-cloud-core/mypy.ini delete mode 100644 packages/google-cloud-data-fusion/mypy.ini delete mode 100644 packages/google-cloud-data-qna/mypy.ini delete mode 100644 packages/google-cloud-databasecenter/mypy.ini delete mode 100644 packages/google-cloud-datacatalog-lineage-configmanagement/mypy.ini delete mode 100644 packages/google-cloud-datacatalog-lineage/mypy.ini delete mode 100644 packages/google-cloud-datacatalog/mypy.ini delete mode 100644 packages/google-cloud-dataflow-client/mypy.ini delete mode 100644 packages/google-cloud-dataform/mypy.ini delete mode 100644 packages/google-cloud-datalabeling/mypy.ini delete mode 100644 packages/google-cloud-dataplex/mypy.ini delete mode 100644 packages/google-cloud-dataproc-metastore/mypy.ini delete mode 100644 packages/google-cloud-dataproc/mypy.ini delete mode 100644 packages/google-cloud-datastore/mypy.ini delete mode 100644 packages/google-cloud-datastream/mypy.ini delete mode 100644 packages/google-cloud-deploy/mypy.ini delete mode 100644 packages/google-cloud-developerconnect/mypy.ini delete mode 100644 packages/google-cloud-devicestreaming/mypy.ini delete mode 100644 packages/google-cloud-dialogflow-cx/mypy.ini delete mode 100644 packages/google-cloud-dialogflow/mypy.ini delete mode 100644 packages/google-cloud-discoveryengine/mypy.ini delete mode 100644 packages/google-cloud-dlp/mypy.ini delete mode 100644 packages/google-cloud-dms/mypy.ini delete mode 100644 packages/google-cloud-documentai/mypy.ini delete mode 100644 packages/google-cloud-domains/mypy.ini delete mode 100644 packages/google-cloud-edgecontainer/mypy.ini delete mode 100644 packages/google-cloud-edgenetwork/mypy.ini delete mode 100644 packages/google-cloud-enterpriseknowledgegraph/mypy.ini delete mode 100644 packages/google-cloud-error-reporting/mypy.ini delete mode 100644 packages/google-cloud-essential-contacts/mypy.ini delete mode 100644 packages/google-cloud-eventarc-publishing/mypy.ini delete mode 100644 packages/google-cloud-eventarc/mypy.ini delete mode 100644 packages/google-cloud-filestore/mypy.ini delete mode 100644 packages/google-cloud-financialservices/mypy.ini delete mode 100644 packages/google-cloud-firestore/mypy.ini delete mode 100644 packages/google-cloud-functions/mypy.ini delete mode 100644 packages/google-cloud-gdchardwaremanagement/mypy.ini delete mode 100644 packages/google-cloud-geminidataanalytics/mypy.ini delete mode 100644 packages/google-cloud-gke-backup/mypy.ini delete mode 100644 packages/google-cloud-gke-connect-gateway/mypy.ini delete mode 100644 packages/google-cloud-gke-hub/mypy.ini delete mode 100644 packages/google-cloud-gke-multicloud/mypy.ini delete mode 100644 packages/google-cloud-gkerecommender/mypy.ini delete mode 100644 packages/google-cloud-gsuiteaddons/mypy.ini delete mode 100644 packages/google-cloud-hypercomputecluster/mypy.ini delete mode 100644 packages/google-cloud-iam-logging/mypy.ini delete mode 100644 packages/google-cloud-iam/mypy.ini delete mode 100644 packages/google-cloud-iamconnectorcredentials/mypy.ini delete mode 100644 packages/google-cloud-iap/mypy.ini delete mode 100644 packages/google-cloud-ids/mypy.ini delete mode 100644 packages/google-cloud-kms-inventory/mypy.ini delete mode 100644 packages/google-cloud-kms/mypy.ini delete mode 100644 packages/google-cloud-language/mypy.ini delete mode 100644 packages/google-cloud-licensemanager/mypy.ini delete mode 100644 packages/google-cloud-life-sciences/mypy.ini delete mode 100644 packages/google-cloud-locationfinder/mypy.ini delete mode 100644 packages/google-cloud-logging/mypy.ini delete mode 100644 packages/google-cloud-lustre/mypy.ini delete mode 100644 packages/google-cloud-maintenance-api/mypy.ini delete mode 100644 packages/google-cloud-managed-identities/mypy.ini delete mode 100644 packages/google-cloud-managedkafka-schemaregistry/mypy.ini delete mode 100644 packages/google-cloud-managedkafka/mypy.ini delete mode 100644 packages/google-cloud-media-translation/mypy.ini delete mode 100644 packages/google-cloud-memcache/mypy.ini delete mode 100644 packages/google-cloud-memorystore/mypy.ini delete mode 100644 packages/google-cloud-migrationcenter/mypy.ini delete mode 100644 packages/google-cloud-modelarmor/mypy.ini delete mode 100644 packages/google-cloud-monitoring-dashboards/mypy.ini delete mode 100644 packages/google-cloud-monitoring-metrics-scopes/mypy.ini delete mode 100644 packages/google-cloud-monitoring/mypy.ini delete mode 100644 packages/google-cloud-netapp/mypy.ini delete mode 100644 packages/google-cloud-network-connectivity/mypy.ini delete mode 100644 packages/google-cloud-network-management/mypy.ini delete mode 100644 packages/google-cloud-network-security/mypy.ini delete mode 100644 packages/google-cloud-network-services/mypy.ini delete mode 100644 packages/google-cloud-notebooks/mypy.ini delete mode 100644 packages/google-cloud-optimization/mypy.ini delete mode 100644 packages/google-cloud-oracledatabase/mypy.ini delete mode 100644 packages/google-cloud-orchestration-airflow/mypy.ini delete mode 100644 packages/google-cloud-org-policy/mypy.ini delete mode 100644 packages/google-cloud-os-config/mypy.ini delete mode 100644 packages/google-cloud-os-login/mypy.ini delete mode 100644 packages/google-cloud-parallelstore/mypy.ini delete mode 100644 packages/google-cloud-parametermanager/mypy.ini delete mode 100644 packages/google-cloud-phishing-protection/mypy.ini delete mode 100644 packages/google-cloud-policy-troubleshooter/mypy.ini delete mode 100644 packages/google-cloud-policysimulator/mypy.ini delete mode 100644 packages/google-cloud-policytroubleshooter-iam/mypy.ini delete mode 100644 packages/google-cloud-private-ca/mypy.ini delete mode 100644 packages/google-cloud-private-catalog/mypy.ini delete mode 100644 packages/google-cloud-privilegedaccessmanager/mypy.ini delete mode 100644 packages/google-cloud-pubsub/mypy.ini delete mode 100644 packages/google-cloud-quotas/mypy.ini delete mode 100644 packages/google-cloud-rapidmigrationassessment/mypy.ini delete mode 100644 packages/google-cloud-recaptcha-enterprise/mypy.ini delete mode 100644 packages/google-cloud-recommendations-ai/mypy.ini delete mode 100644 packages/google-cloud-recommender/mypy.ini delete mode 100644 packages/google-cloud-redis-cluster/mypy.ini delete mode 100644 packages/google-cloud-redis/mypy.ini delete mode 100644 packages/google-cloud-resource-manager/mypy.ini delete mode 100644 packages/google-cloud-retail/mypy.ini delete mode 100644 packages/google-cloud-run/mypy.ini delete mode 100644 packages/google-cloud-saasplatform-saasservicemgmt/mypy.ini delete mode 100644 packages/google-cloud-scheduler/mypy.ini delete mode 100644 packages/google-cloud-secret-manager/mypy.ini delete mode 100644 packages/google-cloud-securesourcemanager/mypy.ini delete mode 100644 packages/google-cloud-security-publicca/mypy.ini delete mode 100644 packages/google-cloud-securitycenter/mypy.ini delete mode 100644 packages/google-cloud-securitycentermanagement/mypy.ini delete mode 100644 packages/google-cloud-service-control/mypy.ini delete mode 100644 packages/google-cloud-service-directory/mypy.ini delete mode 100644 packages/google-cloud-service-management/mypy.ini delete mode 100644 packages/google-cloud-service-usage/mypy.ini delete mode 100644 packages/google-cloud-servicehealth/mypy.ini delete mode 100644 packages/google-cloud-shell/mypy.ini delete mode 100644 packages/google-cloud-source-context/mypy.ini delete mode 100644 packages/google-cloud-spanner-dbapi-driver/mypy.ini delete mode 100644 packages/google-cloud-spanner/mypy.ini delete mode 100644 packages/google-cloud-speech/mypy.ini delete mode 100644 packages/google-cloud-storage-control/mypy.ini delete mode 100644 packages/google-cloud-storage-transfer/mypy.ini delete mode 100644 packages/google-cloud-storage/mypy.ini delete mode 100644 packages/google-cloud-storagebatchoperations/mypy.ini delete mode 100644 packages/google-cloud-storageinsights/mypy.ini delete mode 100644 packages/google-cloud-support/mypy.ini delete mode 100644 packages/google-cloud-talent/mypy.ini delete mode 100644 packages/google-cloud-tasks/mypy.ini delete mode 100644 packages/google-cloud-telcoautomation/mypy.ini delete mode 100644 packages/google-cloud-testutils/mypy.ini delete mode 100644 packages/google-cloud-texttospeech/mypy.ini delete mode 100644 packages/google-cloud-tpu/mypy.ini delete mode 100644 packages/google-cloud-trace/mypy.ini delete mode 100644 packages/google-cloud-translate/mypy.ini delete mode 100644 packages/google-cloud-vectorsearch/mypy.ini delete mode 100644 packages/google-cloud-video-live-stream/mypy.ini delete mode 100644 packages/google-cloud-video-stitcher/mypy.ini delete mode 100644 packages/google-cloud-video-transcoder/mypy.ini delete mode 100644 packages/google-cloud-videointelligence/mypy.ini delete mode 100644 packages/google-cloud-vision/mypy.ini delete mode 100644 packages/google-cloud-visionai/mypy.ini delete mode 100644 packages/google-cloud-vm-migration/mypy.ini delete mode 100644 packages/google-cloud-vmwareengine/mypy.ini delete mode 100644 packages/google-cloud-vpc-access/mypy.ini delete mode 100644 packages/google-cloud-webrisk/mypy.ini delete mode 100644 packages/google-cloud-websecurityscanner/mypy.ini delete mode 100644 packages/google-cloud-workflows/mypy.ini delete mode 100644 packages/google-cloud-workloadmanager/mypy.ini delete mode 100644 packages/google-cloud-workstations/mypy.ini delete mode 100644 packages/google-crc32c/mypy.ini delete mode 100644 packages/google-developer-knowledge/mypy.ini delete mode 100644 packages/google-devicesandservices-health/mypy.ini delete mode 100644 packages/google-geo-type/mypy.ini delete mode 100644 packages/google-maps-addressvalidation/mypy.ini delete mode 100644 packages/google-maps-areainsights/mypy.ini delete mode 100644 packages/google-maps-fleetengine-delivery/mypy.ini delete mode 100644 packages/google-maps-fleetengine/mypy.ini delete mode 100644 packages/google-maps-geocode/mypy.ini delete mode 100644 packages/google-maps-mapmanagement/mypy.ini delete mode 100644 packages/google-maps-mapsplatformdatasets/mypy.ini delete mode 100644 packages/google-maps-navconnect/mypy.ini delete mode 100644 packages/google-maps-places/mypy.ini delete mode 100644 packages/google-maps-routeoptimization/mypy.ini delete mode 100644 packages/google-maps-routing/mypy.ini delete mode 100644 packages/google-maps-solar/mypy.ini delete mode 100644 packages/google-resumable-media/mypy.ini delete mode 100644 packages/google-shopping-css/mypy.ini delete mode 100644 packages/google-shopping-merchant-accounts/mypy.ini delete mode 100644 packages/google-shopping-merchant-conversions/mypy.ini delete mode 100644 packages/google-shopping-merchant-datasources/mypy.ini delete mode 100644 packages/google-shopping-merchant-inventories/mypy.ini delete mode 100644 packages/google-shopping-merchant-issueresolution/mypy.ini delete mode 100644 packages/google-shopping-merchant-lfp/mypy.ini delete mode 100644 packages/google-shopping-merchant-notifications/mypy.ini delete mode 100644 packages/google-shopping-merchant-ordertracking/mypy.ini delete mode 100644 packages/google-shopping-merchant-products/mypy.ini delete mode 100644 packages/google-shopping-merchant-productstudio/mypy.ini delete mode 100644 packages/google-shopping-merchant-promotions/mypy.ini delete mode 100644 packages/google-shopping-merchant-quota/mypy.ini delete mode 100644 packages/google-shopping-merchant-reports/mypy.ini delete mode 100644 packages/google-shopping-merchant-reviews/mypy.ini delete mode 100644 packages/google-shopping-type/mypy.ini delete mode 100644 packages/grafeas/mypy.ini diff --git a/.librarian/generator-input/client-post-processing/bigtable-integration.yaml b/.librarian/generator-input/client-post-processing/bigtable-integration.yaml index ae96f7317dff..fb373802cddc 100644 --- a/.librarian/generator-input/client-post-processing/bigtable-integration.yaml +++ b/.librarian/generator-input/client-post-processing/bigtable-integration.yaml @@ -357,52 +357,6 @@ replacements: Quick Start count: 1 - - paths: [ - packages/google-cloud-bigtable/mypy.ini - ] - before: | - \[mypy\] - [\s\S]*?incremental = True - after: | - [mypy] - python_version = 3.13 - namespace_packages = True - check_untyped_defs = True - warn_unreachable = True - disallow_any_generics = True - exclude = tests/unit/gapic/ - - [mypy-grpc.*] - ignore_missing_imports = True - - [mypy-google.auth.*] - ignore_missing_imports = True - - [mypy-google.iam.*] - ignore_missing_imports = True - - [mypy-google.longrunning.*] - ignore_missing_imports = True - - [mypy-google.oauth2.*] - ignore_missing_imports = True - - [mypy-google.rpc.*] - ignore_missing_imports = True - - [mypy-proto.*] - ignore_missing_imports = True - - [mypy-pytest] - ignore_missing_imports = True - - [mypy-google.cloud.*] - ignore_errors = True - - # only verify data client - [mypy-google.cloud.bigtable.data.*] - ignore_errors = False - count: 1 # Note: noxfile.py is heavily customized so we clobber the whole file. - paths: [ packages/google-cloud-bigtable/noxfile.py diff --git a/.librarian/generator-input/client-post-processing/datastore-integration.yaml b/.librarian/generator-input/client-post-processing/datastore-integration.yaml index 7d81275e77c0..aca5e5845036 100644 --- a/.librarian/generator-input/client-post-processing/datastore-integration.yaml +++ b/.librarian/generator-input/client-post-processing/datastore-integration.yaml @@ -39,42 +39,6 @@ replacements: "google-cloud-core >= 2.0.0, <3.0.0", "grpcio >= 1.59.0, < 2.0.0", count: 1 - - paths: [ - "packages/google-cloud-datastore/mypy.ini", - ] - before: |- - # Performance: reuse results from previous runs to speed up 'nox' - incremental = True - after: |- - # Performance: reuse results from previous runs to speed up "nox" - incremental = True - - [mypy-google.cloud.datastore._app_engine_key_pb2] - ignore_errors = True - - # TODO(https://github.com/googleapis/gapic-generator-python/issues/2410): - # Remove once this generator bug is fixed - [mypy-google.cloud.datastore_v1.services.datastore.async_client] - ignore_errors = True - - # TODO(https://github.com/googleapis/gapic-generator-python/issues/2410): - # Remove once this generator bug is fixed - [mypy-google.cloud.datastore_v1.services.datastore.client] - ignore_errors = True - count: 1 - - paths: [ - "packages/google-cloud-datastore/mypy.ini", - ] - before: | - ignore_missing_imports = False - - # TODO\(https://github.com/googleapis/gapic-generator-python/issues/2563\): - # Dependencies that historically lacks py.typed markers - \[mypy-google\.iam\.\*\] - ignore_missing_imports = True - after: | - ignore_missing_imports = True - count: 1 - paths: [ "packages/google-cloud-datastore/docs/index.rst", ] diff --git a/librarian.yaml b/librarian.yaml index 075cf34ad674..afa980dd33ce 100644 --- a/librarian.yaml +++ b/librarian.yaml @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. language: python -version: v0.22.0 +version: v0.22.1-0.20260626155540-a0930f4b0f52 repo: googleapis/google-cloud-python sources: googleapis: diff --git a/packages/bigframes/mypy.ini b/packages/bigframes/mypy.ini deleted file mode 100644 index e3f44c262ac6..000000000000 --- a/packages/bigframes/mypy.ini +++ /dev/null @@ -1,49 +0,0 @@ -# https://mypy.readthedocs.io/en/stable/config_file.html#config-file - -[mypy] -exclude = ^third_party/ - -[mypy-google.auth.*] -ignore_missing_imports = True - -[mypy-cloudpickle.*] -ignore_missing_imports = True - -[mypy-flask] -ignore_missing_imports = True - -[mypy-pydata_google_auth] -ignore_missing_imports = True - -[mypy-google.colab] -ignore_missing_imports = True - -[mypy-google.iam.*] -ignore_missing_imports = True - -[mypy-pytz] -ignore_missing_imports = True - -[mypy-pyarrow] -ignore_missing_imports = True - -[mypy-ibis.*] -ignore_missing_imports = True - -[mypy-ipywidgets] -ignore_missing_imports = True - -[mypy-pyarrow.feather] -ignore_missing_imports = True - -[mypy-google.cloud.pubsub] -ignore_missing_imports = True - -[mypy-google.cloud.bigtable] -ignore_missing_imports = True - -[mypy-anywidget] -ignore_missing_imports = True - -[mypy-bigframes_vendored.*] -ignore_errors = True diff --git a/packages/bigquery-magics/mypy.ini b/packages/bigquery-magics/mypy.ini deleted file mode 100644 index a3cb5c292172..000000000000 --- a/packages/bigquery-magics/mypy.ini +++ /dev/null @@ -1,3 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True diff --git a/packages/gapic-generator/mypy.ini b/packages/gapic-generator/mypy.ini deleted file mode 100644 index ecb455a69d99..000000000000 --- a/packages/gapic-generator/mypy.ini +++ /dev/null @@ -1,2 +0,0 @@ -[mypy] -python_version = 3.14 diff --git a/packages/google-ads-admanager/mypy.ini b/packages/google-ads-admanager/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-ads-admanager/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-ads-datamanager/mypy.ini b/packages/google-ads-datamanager/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-ads-datamanager/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-ads-marketingplatform-admin/mypy.ini b/packages/google-ads-marketingplatform-admin/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-ads-marketingplatform-admin/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-ai-generativelanguage/mypy.ini b/packages/google-ai-generativelanguage/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-ai-generativelanguage/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-analytics-admin/mypy.ini b/packages/google-analytics-admin/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-analytics-admin/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-analytics-data/mypy.ini b/packages/google-analytics-data/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-analytics-data/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-apps-card/mypy.ini b/packages/google-apps-card/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-apps-card/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-apps-chat/mypy.ini b/packages/google-apps-chat/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-apps-chat/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-apps-events-subscriptions/mypy.ini b/packages/google-apps-events-subscriptions/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-apps-events-subscriptions/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-apps-meet/mypy.ini b/packages/google-apps-meet/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-apps-meet/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-apps-script-type/mypy.ini b/packages/google-apps-script-type/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-apps-script-type/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-area120-tables/mypy.ini b/packages/google-area120-tables/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-area120-tables/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-auth/mypy.ini b/packages/google-auth/mypy.ini deleted file mode 100644 index c129006db138..000000000000 --- a/packages/google-auth/mypy.ini +++ /dev/null @@ -1,3 +0,0 @@ -[mypy] -python_version = 3.9 -namespace_packages = True diff --git a/packages/google-backstory/mypy.ini b/packages/google-backstory/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-backstory/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-access-approval/mypy.ini b/packages/google-cloud-access-approval/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-access-approval/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-advisorynotifications/mypy.ini b/packages/google-cloud-advisorynotifications/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-advisorynotifications/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-agentidentitycredentials/mypy.ini b/packages/google-cloud-agentidentitycredentials/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-agentidentitycredentials/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-agentregistry/mypy.ini b/packages/google-cloud-agentregistry/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-agentregistry/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-alloydb-connectors/mypy.ini b/packages/google-cloud-alloydb-connectors/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-alloydb-connectors/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-alloydb/mypy.ini b/packages/google-cloud-alloydb/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-alloydb/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-api-gateway/mypy.ini b/packages/google-cloud-api-gateway/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-api-gateway/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-api-keys/mypy.ini b/packages/google-cloud-api-keys/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-api-keys/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-apigee-connect/mypy.ini b/packages/google-cloud-apigee-connect/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-apigee-connect/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-apigee-registry/mypy.ini b/packages/google-cloud-apigee-registry/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-apigee-registry/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-apihub/mypy.ini b/packages/google-cloud-apihub/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-apihub/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-apiregistry/mypy.ini b/packages/google-cloud-apiregistry/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-apiregistry/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-appengine-admin/mypy.ini b/packages/google-cloud-appengine-admin/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-appengine-admin/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-appengine-logging/mypy.ini b/packages/google-cloud-appengine-logging/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-appengine-logging/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-apphub/mypy.ini b/packages/google-cloud-apphub/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-apphub/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-appoptimize/mypy.ini b/packages/google-cloud-appoptimize/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-appoptimize/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-artifact-registry/mypy.ini b/packages/google-cloud-artifact-registry/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-artifact-registry/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-asset/mypy.ini b/packages/google-cloud-asset/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-asset/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-assured-workloads/mypy.ini b/packages/google-cloud-assured-workloads/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-assured-workloads/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-auditmanager/mypy.ini b/packages/google-cloud-auditmanager/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-auditmanager/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-automl/mypy.ini b/packages/google-cloud-automl/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-automl/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-backupdr/mypy.ini b/packages/google-cloud-backupdr/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-backupdr/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-bare-metal-solution/mypy.ini b/packages/google-cloud-bare-metal-solution/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-bare-metal-solution/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-batch/mypy.ini b/packages/google-cloud-batch/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-batch/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-beyondcorp-appconnections/mypy.ini b/packages/google-cloud-beyondcorp-appconnections/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-beyondcorp-appconnections/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-beyondcorp-appconnectors/mypy.ini b/packages/google-cloud-beyondcorp-appconnectors/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-beyondcorp-appconnectors/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-beyondcorp-appgateways/mypy.ini b/packages/google-cloud-beyondcorp-appgateways/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-beyondcorp-appgateways/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-beyondcorp-clientconnectorservices/mypy.ini b/packages/google-cloud-beyondcorp-clientconnectorservices/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-beyondcorp-clientconnectorservices/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-beyondcorp-clientgateways/mypy.ini b/packages/google-cloud-beyondcorp-clientgateways/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-beyondcorp-clientgateways/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-biglake-hive/mypy.ini b/packages/google-cloud-biglake-hive/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-biglake-hive/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-biglake/mypy.ini b/packages/google-cloud-biglake/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-biglake/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-bigquery-analyticshub/mypy.ini b/packages/google-cloud-bigquery-analyticshub/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-bigquery-analyticshub/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-bigquery-biglake/mypy.ini b/packages/google-cloud-bigquery-biglake/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-bigquery-biglake/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-bigquery-connection/mypy.ini b/packages/google-cloud-bigquery-connection/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-bigquery-connection/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-bigquery-data-exchange/mypy.ini b/packages/google-cloud-bigquery-data-exchange/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-bigquery-data-exchange/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-bigquery-datapolicies/mypy.ini b/packages/google-cloud-bigquery-datapolicies/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-bigquery-datapolicies/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-bigquery-datatransfer/mypy.ini b/packages/google-cloud-bigquery-datatransfer/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-bigquery-datatransfer/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-bigquery-logging/mypy.ini b/packages/google-cloud-bigquery-logging/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-bigquery-logging/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-bigquery-migration/mypy.ini b/packages/google-cloud-bigquery-migration/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-bigquery-migration/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-bigquery-reservation/mypy.ini b/packages/google-cloud-bigquery-reservation/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-bigquery-reservation/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-bigquery-storage/mypy.ini b/packages/google-cloud-bigquery-storage/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-bigquery-storage/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-bigquery/mypy.ini b/packages/google-cloud-bigquery/mypy.ini deleted file mode 100644 index a3cb5c292172..000000000000 --- a/packages/google-cloud-bigquery/mypy.ini +++ /dev/null @@ -1,3 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True diff --git a/packages/google-cloud-bigtable/mypy.ini b/packages/google-cloud-bigtable/mypy.ini deleted file mode 100644 index 701b7587ce6f..000000000000 --- a/packages/google-cloud-bigtable/mypy.ini +++ /dev/null @@ -1,38 +0,0 @@ -[mypy] -python_version = 3.13 -namespace_packages = True -check_untyped_defs = True -warn_unreachable = True -disallow_any_generics = True -exclude = tests/unit/gapic/ - -[mypy-grpc.*] -ignore_missing_imports = True - -[mypy-google.auth.*] -ignore_missing_imports = True - -[mypy-google.iam.*] -ignore_missing_imports = True - -[mypy-google.longrunning.*] -ignore_missing_imports = True - -[mypy-google.oauth2.*] -ignore_missing_imports = True - -[mypy-google.rpc.*] -ignore_missing_imports = True - -[mypy-proto.*] -ignore_missing_imports = True - -[mypy-pytest] -ignore_missing_imports = True - -[mypy-google.cloud.*] -ignore_errors = True - -# only verify data client -[mypy-google.cloud.bigtable.data.*] -ignore_errors = False diff --git a/packages/google-cloud-billing-budgets/mypy.ini b/packages/google-cloud-billing-budgets/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-billing-budgets/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-billing/mypy.ini b/packages/google-cloud-billing/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-billing/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-binary-authorization/mypy.ini b/packages/google-cloud-binary-authorization/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-binary-authorization/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-build/mypy.ini b/packages/google-cloud-build/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-build/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-capacityplanner/mypy.ini b/packages/google-cloud-capacityplanner/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-capacityplanner/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-certificate-manager/mypy.ini b/packages/google-cloud-certificate-manager/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-certificate-manager/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-ces/mypy.ini b/packages/google-cloud-ces/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-ces/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-channel/mypy.ini b/packages/google-cloud-channel/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-channel/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-chronicle/mypy.ini b/packages/google-cloud-chronicle/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-chronicle/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-cloudcontrolspartner/mypy.ini b/packages/google-cloud-cloudcontrolspartner/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-cloudcontrolspartner/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-cloudsecuritycompliance/mypy.ini b/packages/google-cloud-cloudsecuritycompliance/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-cloudsecuritycompliance/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-commerce-consumer-procurement/mypy.ini b/packages/google-cloud-commerce-consumer-procurement/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-commerce-consumer-procurement/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-common/mypy.ini b/packages/google-cloud-common/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-common/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-compute-v1beta/mypy.ini b/packages/google-cloud-compute-v1beta/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-compute-v1beta/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-compute/mypy.ini b/packages/google-cloud-compute/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-compute/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-confidentialcomputing/mypy.ini b/packages/google-cloud-confidentialcomputing/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-confidentialcomputing/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-config/mypy.ini b/packages/google-cloud-config/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-config/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-configdelivery/mypy.ini b/packages/google-cloud-configdelivery/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-configdelivery/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-contact-center-insights/mypy.ini b/packages/google-cloud-contact-center-insights/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-contact-center-insights/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-container/mypy.ini b/packages/google-cloud-container/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-container/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-containeranalysis/mypy.ini b/packages/google-cloud-containeranalysis/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-containeranalysis/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-contentwarehouse/mypy.ini b/packages/google-cloud-contentwarehouse/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-contentwarehouse/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-core/mypy.ini b/packages/google-cloud-core/mypy.ini deleted file mode 100644 index ed9dccd3b6fd..000000000000 --- a/packages/google-cloud-core/mypy.ini +++ /dev/null @@ -1,7 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = True - -[mypy-google.protobuf] -ignore_missing_imports = True diff --git a/packages/google-cloud-data-fusion/mypy.ini b/packages/google-cloud-data-fusion/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-data-fusion/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-data-qna/mypy.ini b/packages/google-cloud-data-qna/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-data-qna/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-databasecenter/mypy.ini b/packages/google-cloud-databasecenter/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-databasecenter/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-datacatalog-lineage-configmanagement/mypy.ini b/packages/google-cloud-datacatalog-lineage-configmanagement/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-datacatalog-lineage-configmanagement/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-datacatalog-lineage/mypy.ini b/packages/google-cloud-datacatalog-lineage/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-datacatalog-lineage/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-datacatalog/mypy.ini b/packages/google-cloud-datacatalog/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-datacatalog/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-dataflow-client/mypy.ini b/packages/google-cloud-dataflow-client/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-dataflow-client/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-dataform/mypy.ini b/packages/google-cloud-dataform/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-dataform/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-datalabeling/mypy.ini b/packages/google-cloud-datalabeling/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-datalabeling/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-dataplex/mypy.ini b/packages/google-cloud-dataplex/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-dataplex/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-dataproc-metastore/mypy.ini b/packages/google-cloud-dataproc-metastore/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-dataproc-metastore/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-dataproc/mypy.ini b/packages/google-cloud-dataproc/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-dataproc/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-datastore/mypy.ini b/packages/google-cloud-datastore/mypy.ini deleted file mode 100644 index 2d553926db9d..000000000000 --- a/packages/google-cloud-datastore/mypy.ini +++ /dev/null @@ -1,23 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up "nox" -incremental = True - -[mypy-google.cloud.datastore._app_engine_key_pb2] -ignore_errors = True - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2410): -# Remove once this generator bug is fixed -[mypy-google.cloud.datastore_v1.services.datastore.async_client] -ignore_errors = True - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2410): -# Remove once this generator bug is fixed -[mypy-google.cloud.datastore_v1.services.datastore.client] -ignore_errors = True diff --git a/packages/google-cloud-datastream/mypy.ini b/packages/google-cloud-datastream/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-datastream/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-deploy/mypy.ini b/packages/google-cloud-deploy/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-deploy/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-developerconnect/mypy.ini b/packages/google-cloud-developerconnect/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-developerconnect/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-devicestreaming/mypy.ini b/packages/google-cloud-devicestreaming/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-devicestreaming/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-dialogflow-cx/mypy.ini b/packages/google-cloud-dialogflow-cx/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-dialogflow-cx/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-dialogflow/mypy.ini b/packages/google-cloud-dialogflow/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-dialogflow/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-discoveryengine/mypy.ini b/packages/google-cloud-discoveryengine/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-discoveryengine/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-dlp/mypy.ini b/packages/google-cloud-dlp/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-dlp/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-dms/mypy.ini b/packages/google-cloud-dms/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-dms/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-documentai/mypy.ini b/packages/google-cloud-documentai/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-documentai/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-domains/mypy.ini b/packages/google-cloud-domains/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-domains/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-edgecontainer/mypy.ini b/packages/google-cloud-edgecontainer/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-edgecontainer/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-edgenetwork/mypy.ini b/packages/google-cloud-edgenetwork/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-edgenetwork/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-enterpriseknowledgegraph/mypy.ini b/packages/google-cloud-enterpriseknowledgegraph/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-enterpriseknowledgegraph/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-error-reporting/mypy.ini b/packages/google-cloud-error-reporting/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-error-reporting/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-essential-contacts/mypy.ini b/packages/google-cloud-essential-contacts/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-essential-contacts/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-eventarc-publishing/mypy.ini b/packages/google-cloud-eventarc-publishing/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-eventarc-publishing/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-eventarc/mypy.ini b/packages/google-cloud-eventarc/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-eventarc/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-filestore/mypy.ini b/packages/google-cloud-filestore/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-filestore/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-financialservices/mypy.ini b/packages/google-cloud-financialservices/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-financialservices/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-firestore/mypy.ini b/packages/google-cloud-firestore/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-firestore/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-functions/mypy.ini b/packages/google-cloud-functions/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-functions/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-gdchardwaremanagement/mypy.ini b/packages/google-cloud-gdchardwaremanagement/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-gdchardwaremanagement/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-geminidataanalytics/mypy.ini b/packages/google-cloud-geminidataanalytics/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-geminidataanalytics/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-gke-backup/mypy.ini b/packages/google-cloud-gke-backup/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-gke-backup/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-gke-connect-gateway/mypy.ini b/packages/google-cloud-gke-connect-gateway/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-gke-connect-gateway/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-gke-hub/mypy.ini b/packages/google-cloud-gke-hub/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-gke-hub/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-gke-multicloud/mypy.ini b/packages/google-cloud-gke-multicloud/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-gke-multicloud/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-gkerecommender/mypy.ini b/packages/google-cloud-gkerecommender/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-gkerecommender/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-gsuiteaddons/mypy.ini b/packages/google-cloud-gsuiteaddons/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-gsuiteaddons/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-hypercomputecluster/mypy.ini b/packages/google-cloud-hypercomputecluster/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-hypercomputecluster/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-iam-logging/mypy.ini b/packages/google-cloud-iam-logging/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-iam-logging/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-iam/mypy.ini b/packages/google-cloud-iam/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-iam/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-iamconnectorcredentials/mypy.ini b/packages/google-cloud-iamconnectorcredentials/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-iamconnectorcredentials/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-iap/mypy.ini b/packages/google-cloud-iap/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-iap/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-ids/mypy.ini b/packages/google-cloud-ids/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-ids/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-kms-inventory/mypy.ini b/packages/google-cloud-kms-inventory/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-kms-inventory/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-kms/mypy.ini b/packages/google-cloud-kms/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-kms/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-language/mypy.ini b/packages/google-cloud-language/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-language/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-licensemanager/mypy.ini b/packages/google-cloud-licensemanager/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-licensemanager/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-life-sciences/mypy.ini b/packages/google-cloud-life-sciences/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-life-sciences/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-locationfinder/mypy.ini b/packages/google-cloud-locationfinder/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-locationfinder/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-logging/mypy.ini b/packages/google-cloud-logging/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-logging/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-lustre/mypy.ini b/packages/google-cloud-lustre/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-lustre/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-maintenance-api/mypy.ini b/packages/google-cloud-maintenance-api/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-maintenance-api/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-managed-identities/mypy.ini b/packages/google-cloud-managed-identities/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-managed-identities/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-managedkafka-schemaregistry/mypy.ini b/packages/google-cloud-managedkafka-schemaregistry/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-managedkafka-schemaregistry/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-managedkafka/mypy.ini b/packages/google-cloud-managedkafka/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-managedkafka/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-media-translation/mypy.ini b/packages/google-cloud-media-translation/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-media-translation/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-memcache/mypy.ini b/packages/google-cloud-memcache/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-memcache/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-memorystore/mypy.ini b/packages/google-cloud-memorystore/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-memorystore/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-migrationcenter/mypy.ini b/packages/google-cloud-migrationcenter/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-migrationcenter/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-modelarmor/mypy.ini b/packages/google-cloud-modelarmor/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-modelarmor/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-monitoring-dashboards/mypy.ini b/packages/google-cloud-monitoring-dashboards/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-monitoring-dashboards/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-monitoring-metrics-scopes/mypy.ini b/packages/google-cloud-monitoring-metrics-scopes/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-monitoring-metrics-scopes/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-monitoring/mypy.ini b/packages/google-cloud-monitoring/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-monitoring/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-netapp/mypy.ini b/packages/google-cloud-netapp/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-netapp/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-network-connectivity/mypy.ini b/packages/google-cloud-network-connectivity/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-network-connectivity/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-network-management/mypy.ini b/packages/google-cloud-network-management/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-network-management/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-network-security/mypy.ini b/packages/google-cloud-network-security/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-network-security/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-network-services/mypy.ini b/packages/google-cloud-network-services/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-network-services/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-notebooks/mypy.ini b/packages/google-cloud-notebooks/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-notebooks/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-optimization/mypy.ini b/packages/google-cloud-optimization/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-optimization/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-oracledatabase/mypy.ini b/packages/google-cloud-oracledatabase/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-oracledatabase/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-orchestration-airflow/mypy.ini b/packages/google-cloud-orchestration-airflow/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-orchestration-airflow/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-org-policy/mypy.ini b/packages/google-cloud-org-policy/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-org-policy/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-os-config/mypy.ini b/packages/google-cloud-os-config/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-os-config/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-os-login/mypy.ini b/packages/google-cloud-os-login/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-os-login/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-parallelstore/mypy.ini b/packages/google-cloud-parallelstore/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-parallelstore/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-parametermanager/mypy.ini b/packages/google-cloud-parametermanager/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-parametermanager/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-phishing-protection/mypy.ini b/packages/google-cloud-phishing-protection/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-phishing-protection/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-policy-troubleshooter/mypy.ini b/packages/google-cloud-policy-troubleshooter/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-policy-troubleshooter/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-policysimulator/mypy.ini b/packages/google-cloud-policysimulator/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-policysimulator/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-policytroubleshooter-iam/mypy.ini b/packages/google-cloud-policytroubleshooter-iam/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-policytroubleshooter-iam/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-private-ca/mypy.ini b/packages/google-cloud-private-ca/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-private-ca/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-private-catalog/mypy.ini b/packages/google-cloud-private-catalog/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-private-catalog/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-privilegedaccessmanager/mypy.ini b/packages/google-cloud-privilegedaccessmanager/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-privilegedaccessmanager/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-pubsub/mypy.ini b/packages/google-cloud-pubsub/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-pubsub/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-quotas/mypy.ini b/packages/google-cloud-quotas/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-quotas/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-rapidmigrationassessment/mypy.ini b/packages/google-cloud-rapidmigrationassessment/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-rapidmigrationassessment/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-recaptcha-enterprise/mypy.ini b/packages/google-cloud-recaptcha-enterprise/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-recaptcha-enterprise/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-recommendations-ai/mypy.ini b/packages/google-cloud-recommendations-ai/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-recommendations-ai/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-recommender/mypy.ini b/packages/google-cloud-recommender/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-recommender/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-redis-cluster/mypy.ini b/packages/google-cloud-redis-cluster/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-redis-cluster/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-redis/mypy.ini b/packages/google-cloud-redis/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-redis/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-resource-manager/mypy.ini b/packages/google-cloud-resource-manager/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-resource-manager/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-retail/mypy.ini b/packages/google-cloud-retail/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-retail/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-run/mypy.ini b/packages/google-cloud-run/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-run/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-saasplatform-saasservicemgmt/mypy.ini b/packages/google-cloud-saasplatform-saasservicemgmt/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-saasplatform-saasservicemgmt/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-scheduler/mypy.ini b/packages/google-cloud-scheduler/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-scheduler/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-secret-manager/mypy.ini b/packages/google-cloud-secret-manager/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-secret-manager/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-securesourcemanager/mypy.ini b/packages/google-cloud-securesourcemanager/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-securesourcemanager/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-security-publicca/mypy.ini b/packages/google-cloud-security-publicca/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-security-publicca/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-securitycenter/mypy.ini b/packages/google-cloud-securitycenter/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-securitycenter/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-securitycentermanagement/mypy.ini b/packages/google-cloud-securitycentermanagement/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-securitycentermanagement/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-service-control/mypy.ini b/packages/google-cloud-service-control/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-service-control/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-service-directory/mypy.ini b/packages/google-cloud-service-directory/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-service-directory/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-service-management/mypy.ini b/packages/google-cloud-service-management/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-service-management/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-service-usage/mypy.ini b/packages/google-cloud-service-usage/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-service-usage/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-servicehealth/mypy.ini b/packages/google-cloud-servicehealth/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-servicehealth/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-shell/mypy.ini b/packages/google-cloud-shell/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-shell/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-source-context/mypy.ini b/packages/google-cloud-source-context/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-source-context/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-spanner-dbapi-driver/mypy.ini b/packages/google-cloud-spanner-dbapi-driver/mypy.ini deleted file mode 100644 index 81b11c94badc..000000000000 --- a/packages/google-cloud-spanner-dbapi-driver/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.11 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-spanner/mypy.ini b/packages/google-cloud-spanner/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-spanner/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-speech/mypy.ini b/packages/google-cloud-speech/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-speech/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-storage-control/mypy.ini b/packages/google-cloud-storage-control/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-storage-control/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-storage-transfer/mypy.ini b/packages/google-cloud-storage-transfer/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-storage-transfer/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-storage/mypy.ini b/packages/google-cloud-storage/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-storage/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-storagebatchoperations/mypy.ini b/packages/google-cloud-storagebatchoperations/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-storagebatchoperations/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-storageinsights/mypy.ini b/packages/google-cloud-storageinsights/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-storageinsights/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-support/mypy.ini b/packages/google-cloud-support/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-support/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-talent/mypy.ini b/packages/google-cloud-talent/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-talent/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-tasks/mypy.ini b/packages/google-cloud-tasks/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-tasks/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-telcoautomation/mypy.ini b/packages/google-cloud-telcoautomation/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-telcoautomation/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-testutils/mypy.ini b/packages/google-cloud-testutils/mypy.ini deleted file mode 100644 index 569486a9ce60..000000000000 --- a/packages/google-cloud-testutils/mypy.ini +++ /dev/null @@ -1,3 +0,0 @@ -[mypy] -python_version = 3.10 -exclude = tests/unit/resources/ diff --git a/packages/google-cloud-texttospeech/mypy.ini b/packages/google-cloud-texttospeech/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-texttospeech/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-tpu/mypy.ini b/packages/google-cloud-tpu/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-tpu/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-trace/mypy.ini b/packages/google-cloud-trace/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-trace/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-translate/mypy.ini b/packages/google-cloud-translate/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-translate/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-vectorsearch/mypy.ini b/packages/google-cloud-vectorsearch/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-vectorsearch/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-video-live-stream/mypy.ini b/packages/google-cloud-video-live-stream/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-video-live-stream/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-video-stitcher/mypy.ini b/packages/google-cloud-video-stitcher/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-video-stitcher/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-video-transcoder/mypy.ini b/packages/google-cloud-video-transcoder/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-video-transcoder/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-videointelligence/mypy.ini b/packages/google-cloud-videointelligence/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-videointelligence/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-vision/mypy.ini b/packages/google-cloud-vision/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-vision/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-visionai/mypy.ini b/packages/google-cloud-visionai/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-visionai/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-vm-migration/mypy.ini b/packages/google-cloud-vm-migration/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-vm-migration/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-vmwareengine/mypy.ini b/packages/google-cloud-vmwareengine/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-vmwareengine/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-vpc-access/mypy.ini b/packages/google-cloud-vpc-access/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-vpc-access/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-webrisk/mypy.ini b/packages/google-cloud-webrisk/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-webrisk/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-websecurityscanner/mypy.ini b/packages/google-cloud-websecurityscanner/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-websecurityscanner/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-workflows/mypy.ini b/packages/google-cloud-workflows/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-workflows/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-workloadmanager/mypy.ini b/packages/google-cloud-workloadmanager/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-workloadmanager/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-cloud-workstations/mypy.ini b/packages/google-cloud-workstations/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-cloud-workstations/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-crc32c/mypy.ini b/packages/google-crc32c/mypy.ini deleted file mode 100644 index 569486a9ce60..000000000000 --- a/packages/google-crc32c/mypy.ini +++ /dev/null @@ -1,3 +0,0 @@ -[mypy] -python_version = 3.10 -exclude = tests/unit/resources/ diff --git a/packages/google-developer-knowledge/mypy.ini b/packages/google-developer-knowledge/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-developer-knowledge/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-devicesandservices-health/mypy.ini b/packages/google-devicesandservices-health/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-devicesandservices-health/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-geo-type/mypy.ini b/packages/google-geo-type/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-geo-type/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-maps-addressvalidation/mypy.ini b/packages/google-maps-addressvalidation/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-maps-addressvalidation/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-maps-areainsights/mypy.ini b/packages/google-maps-areainsights/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-maps-areainsights/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-maps-fleetengine-delivery/mypy.ini b/packages/google-maps-fleetengine-delivery/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-maps-fleetengine-delivery/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-maps-fleetengine/mypy.ini b/packages/google-maps-fleetengine/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-maps-fleetengine/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-maps-geocode/mypy.ini b/packages/google-maps-geocode/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-maps-geocode/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-maps-mapmanagement/mypy.ini b/packages/google-maps-mapmanagement/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-maps-mapmanagement/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-maps-mapsplatformdatasets/mypy.ini b/packages/google-maps-mapsplatformdatasets/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-maps-mapsplatformdatasets/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-maps-navconnect/mypy.ini b/packages/google-maps-navconnect/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-maps-navconnect/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-maps-places/mypy.ini b/packages/google-maps-places/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-maps-places/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-maps-routeoptimization/mypy.ini b/packages/google-maps-routeoptimization/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-maps-routeoptimization/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-maps-routing/mypy.ini b/packages/google-maps-routing/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-maps-routing/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-maps-solar/mypy.ini b/packages/google-maps-solar/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-maps-solar/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-resumable-media/mypy.ini b/packages/google-resumable-media/mypy.ini deleted file mode 100644 index 4505b485436b..000000000000 --- a/packages/google-resumable-media/mypy.ini +++ /dev/null @@ -1,3 +0,0 @@ -[mypy] -python_version = 3.6 -namespace_packages = True diff --git a/packages/google-shopping-css/mypy.ini b/packages/google-shopping-css/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-css/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-accounts/mypy.ini b/packages/google-shopping-merchant-accounts/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-accounts/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-conversions/mypy.ini b/packages/google-shopping-merchant-conversions/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-conversions/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-datasources/mypy.ini b/packages/google-shopping-merchant-datasources/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-datasources/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-inventories/mypy.ini b/packages/google-shopping-merchant-inventories/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-inventories/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-issueresolution/mypy.ini b/packages/google-shopping-merchant-issueresolution/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-issueresolution/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-lfp/mypy.ini b/packages/google-shopping-merchant-lfp/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-lfp/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-notifications/mypy.ini b/packages/google-shopping-merchant-notifications/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-notifications/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-ordertracking/mypy.ini b/packages/google-shopping-merchant-ordertracking/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-ordertracking/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-products/mypy.ini b/packages/google-shopping-merchant-products/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-products/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-productstudio/mypy.ini b/packages/google-shopping-merchant-productstudio/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-productstudio/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-promotions/mypy.ini b/packages/google-shopping-merchant-promotions/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-promotions/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-quota/mypy.ini b/packages/google-shopping-merchant-quota/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-quota/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-reports/mypy.ini b/packages/google-shopping-merchant-reports/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-reports/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-merchant-reviews/mypy.ini b/packages/google-shopping-merchant-reviews/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-merchant-reviews/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/google-shopping-type/mypy.ini b/packages/google-shopping-type/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/google-shopping-type/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True diff --git a/packages/grafeas/mypy.ini b/packages/grafeas/mypy.ini deleted file mode 100644 index e0e0da2e9e40..000000000000 --- a/packages/grafeas/mypy.ini +++ /dev/null @@ -1,15 +0,0 @@ -[mypy] -python_version = 3.14 -namespace_packages = True -ignore_missing_imports = False - -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2563): -# Dependencies that historically lacks py.typed markers -[mypy-google.iam.*] -ignore_missing_imports = True - -# Helps mypy navigate the 'google' namespace more reliably in 3.10+ -explicit_package_bases = True - -# Performance: reuse results from previous runs to speed up 'nox' -incremental = True From a005f72230700dbd3c1b6391efdee90270d38d72 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 17:14:09 +0000 Subject: [PATCH 02/32] chore: run generation for all libraries --- packages/google-ads-admanager/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../admanager_v1/test_ad_break_service.py | 3 + .../test_ad_review_center_ad_service.py | 3 + .../admanager_v1/test_ad_unit_service.py | 6 + .../admanager_v1/test_application_service.py | 3 + .../test_audience_segment_service.py | 3 + .../test_bandwidth_group_service.py | 3 + .../test_browser_language_service.py | 3 + .../admanager_v1/test_browser_service.py | 3 + .../test_cms_metadata_key_service.py | 3 + .../test_cms_metadata_value_service.py | 3 + .../admanager_v1/test_company_service.py | 3 + .../admanager_v1/test_contact_service.py | 3 + .../test_content_bundle_service.py | 3 + .../test_content_label_service.py | 3 + .../admanager_v1/test_content_service.py | 3 + .../test_creative_template_service.py | 3 + .../admanager_v1/test_custom_field_service.py | 3 + .../test_custom_targeting_key_service.py | 3 + .../test_custom_targeting_value_service.py | 3 + .../test_device_capability_service.py | 3 + .../test_device_category_service.py | 3 + .../test_device_manufacturer_service.py | 3 + .../test_entity_signals_mapping_service.py | 3 + .../admanager_v1/test_geo_target_service.py | 3 + .../gapic/admanager_v1/test_label_service.py | 3 + .../admanager_v1/test_line_item_service.py | 3 + .../test_linked_device_service.py | 3 + .../admanager_v1/test_mcm_earnings_service.py | 3 + .../test_mobile_carrier_service.py | 3 + .../test_mobile_device_service.py | 3 + .../test_mobile_device_submodel_service.py | 3 + .../admanager_v1/test_network_service.py | 3 + .../test_operating_system_service.py | 3 + .../test_operating_system_version_service.py | 3 + .../gapic/admanager_v1/test_order_service.py | 3 + .../admanager_v1/test_placement_service.py | 3 + .../test_private_auction_deal_service.py | 3 + .../test_private_auction_service.py | 3 + .../test_programmatic_buyer_service.py | 3 + .../gapic/admanager_v1/test_report_service.py | 6 + .../test_rich_media_ads_company_service.py | 3 + .../gapic/admanager_v1/test_role_service.py | 3 + .../gapic/admanager_v1/test_site_service.py | 3 + .../test_taxonomy_category_service.py | 3 + .../gapic/admanager_v1/test_team_service.py | 3 + packages/google-ads-datamanager/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_partner_link_service.py | 8 + .../test_user_list_direct_license_service.py | 8 + .../test_user_list_global_license_service.py | 16 ++ .../datamanager_v1/test_user_list_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_marketingplatform_admin_service.py | 16 ++ .../google-ai-generativelanguage/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_model_service.py | 8 + .../test_cache_service.py | 8 + .../test_file_service.py | 8 + .../test_model_service.py | 16 ++ .../test_permission_service.py | 8 + .../test_retriever_service.py | 24 ++ .../test_cache_service.py | 8 + .../test_file_service.py | 8 + .../test_model_service.py | 16 ++ .../test_permission_service.py | 8 + .../test_retriever_service.py | 24 ++ .../test_model_service.py | 8 + .../test_model_service.py | 16 ++ .../test_permission_service.py | 8 + packages/google-analytics-admin/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_analytics_admin_service.py | 232 ++++++++++++++++++ .../test_analytics_admin_service.py | 96 ++++++++ packages/google-analytics-data/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../data_v1alpha/test_alpha_analytics_data.py | 24 ++ .../data_v1beta/test_beta_analytics_data.py | 8 + packages/google-apps-card/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-apps-chat/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../unit/gapic/chat_v1/test_chat_service.py | 80 ++++++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_subscriptions_service.py | 8 + .../test_subscriptions_service.py | 8 + packages/google-apps-meet/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_conference_records_service.py | 48 ++++ .../test_conference_records_service.py | 48 ++++ .../gapic/meet_v2beta/test_spaces_service.py | 8 + packages/google-apps-script-type/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-area120-tables/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../tables_v1alpha1/test_tables_service.py | 24 ++ packages/google-backstory/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../google-cloud-access-approval/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../accessapproval_v1/test_access_approval.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_advisory_notifications_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../google-cloud-agentregistry/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../agentregistry_v1/test_agent_registry.py | 64 +++++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-cloud-alloydb/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../gapic/alloydb_v1/test_alloy_db_admin.py | 48 ++++ .../alloydb_v1alpha/test_alloy_db_admin.py | 48 ++++ .../alloydb_v1beta/test_alloy_db_admin.py | 48 ++++ packages/google-cloud-api-gateway/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../apigateway_v1/test_api_gateway_service.py | 24 ++ packages/google-cloud-api-keys/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/api_keys_v2/test_api_keys.py | 8 + .../google-cloud-apigee-connect/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_connection_service.py | 5 + .../google-cloud-apigee-registry/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../gapic/apigee_registry_v1/test_registry.py | 56 +++++ packages/google-cloud-apihub/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/apihub_v1/test_api_hub.py | 64 +++++ .../gapic/apihub_v1/test_api_hub_curate.py | 8 + .../apihub_v1/test_api_hub_dependencies.py | 8 + .../gapic/apihub_v1/test_api_hub_discovery.py | 16 ++ .../gapic/apihub_v1/test_api_hub_plugin.py | 16 ++ .../test_host_project_registration_service.py | 8 + ...test_runtime_project_attachment_service.py | 8 + packages/google-cloud-apiregistry/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_cloud_api_registry.py | 16 ++ .../google-cloud-appengine-admin/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_authorized_certificates.py | 8 + .../test_authorized_domains.py | 8 + .../test_domain_mappings.py | 8 + .../gapic/appengine_admin_v1/test_firewall.py | 8 + .../appengine_admin_v1/test_instances.py | 8 + .../gapic/appengine_admin_v1/test_services.py | 8 + .../gapic/appengine_admin_v1/test_versions.py | 8 + .../google-cloud-appengine-logging/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-cloud-apphub/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../unit/gapic/apphub_v1/test_app_hub.py | 48 ++++ packages/google-cloud-appoptimize/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../appoptimize_v1beta/test_app_optimize.py | 16 ++ .../google-cloud-artifact-registry/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_artifact_registry.py | 88 +++++++ .../test_artifact_registry.py | 40 +++ packages/google-cloud-asset/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 15 ++ .../unit/gapic/asset_v1/test_asset_service.py | 56 +++++ .../asset_v1p1beta1/test_asset_service.py | 16 ++ .../asset_v1p5beta1/test_asset_service.py | 8 + .../google-cloud-assured-workloads/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_assured_workloads_service.py | 13 + .../test_assured_workloads_service.py | 5 + packages/google-cloud-auditmanager/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../auditmanager_v1/test_audit_manager.py | 24 ++ packages/google-cloud-automl/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/automl_v1/test_auto_ml.py | 24 ++ .../unit/gapic/automl_v1beta1/test_auto_ml.py | 40 +++ packages/google-cloud-backupdr/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../unit/gapic/backupdr_v1/test_backup_dr.py | 96 ++++++++ .../test_backup_dr_protection_summary.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_bare_metal_solution.py | 72 ++++++ packages/google-cloud-batch/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/batch_v1/test_batch_service.py | 16 ++ .../gapic/batch_v1alpha/test_batch_service.py | 24 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_app_connections_service.py | 16 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_app_connectors_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_app_gateways_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_client_connector_services_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_client_gateways_service.py | 8 + packages/google-cloud-biglake-hive/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_hive_metastore_service.py | 24 ++ packages/google-cloud-biglake/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_iceberg_catalog_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_analytics_hub_service.py | 30 +++ .../google-cloud-bigquery-biglake/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_metastore_service.py | 24 ++ .../test_metastore_service.py | 32 +++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_connection_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_analytics_hub_service.py | 15 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_data_policy_service.py | 8 + .../test_data_policy_service.py | 5 + .../test_data_policy_service.py | 8 + .../test_data_policy_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_data_transfer_service.py | 32 +++ .../google-cloud-bigquery-logging/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_migration_service.py | 10 + .../test_migration_service.py | 10 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_reservation_service.py | 48 ++++ .../google-cloud-bigquery-storage/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../testing/constraints-3.15.txt | 12 + .../test_bigtable_instance_admin.py | 32 +++ .../test_bigtable_table_admin.py | 40 +++ .../google-cloud-billing-budgets/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/budgets_v1/test_budget_service.py | 8 + .../budgets_v1beta1/test_budget_service.py | 5 + packages/google-cloud-billing/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../gapic/billing_v1/test_cloud_billing.py | 16 ++ .../gapic/billing_v1/test_cloud_catalog.py | 16 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_binauthz_management_service_v1.py | 8 + ...st_binauthz_management_service_v1_beta1.py | 8 + packages/google-cloud-build/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/cloudbuild_v1/test_cloud_build.py | 24 ++ .../cloudbuild_v2/test_repository_manager.py | 24 ++ .../google-cloud-capacityplanner/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_certificate_manager.py | 48 ++++ packages/google-cloud-ces/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/ces_v1/test_agent_service.py | 80 ++++++ .../gapic/ces_v1beta/test_agent_service.py | 80 ++++++ .../ces_v1beta/test_evaluation_service.py | 48 ++++ packages/google-cloud-channel/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_cloud_channel_reports_service.py | 10 + .../channel_v1/test_cloud_channel_service.py | 80 ++++++ packages/google-cloud-chronicle/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_data_access_control_service.py | 16 ++ .../chronicle_v1/test_data_table_service.py | 16 ++ .../gapic/chronicle_v1/test_entity_service.py | 8 + ...atured_content_native_dashboard_service.py | 8 + .../test_native_dashboard_service.py | 8 + .../test_reference_list_service.py | 8 + .../test_rule_execution_error_service.py | 8 + .../gapic/chronicle_v1/test_rule_service.py | 32 +++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_cloud_controls_partner_core.py | 24 ++ .../test_cloud_controls_partner_monitoring.py | 8 + .../test_cloud_controls_partner_core.py | 24 ++ .../test_cloud_controls_partner_monitoring.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../cloudsecuritycompliance_v1/test_audit.py | 8 + .../cloudsecuritycompliance_v1/test_config.py | 16 ++ .../test_deployment.py | 16 ++ .../test_monitoring.py | 24 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_consumer_procurement_service.py | 8 + .../test_license_management_service.py | 8 + .../test_consumer_procurement_service.py | 8 + packages/google-cloud-common/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../google-cloud-compute-v1beta/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../compute_v1beta/test_accelerator_types.py | 6 + .../gapic/compute_v1beta/test_addresses.py | 6 + .../gapic/compute_v1beta/test_autoscalers.py | 6 + .../compute_v1beta/test_backend_buckets.py | 9 + .../compute_v1beta/test_backend_services.py | 9 + .../test_cross_site_networks.py | 3 + .../gapic/compute_v1beta/test_disk_types.py | 6 + .../unit/gapic/compute_v1beta/test_disks.py | 6 + .../test_external_vpn_gateways.py | 3 + .../compute_v1beta/test_firewall_policies.py | 3 + .../gapic/compute_v1beta/test_firewalls.py | 3 + .../compute_v1beta/test_forwarding_rules.py | 6 + .../test_future_reservations.py | 6 + .../compute_v1beta/test_global_addresses.py | 3 + .../test_global_forwarding_rules.py | 3 + .../test_global_network_endpoint_groups.py | 6 + .../compute_v1beta/test_global_operations.py | 6 + .../test_global_organization_operations.py | 3 + .../test_global_public_delegated_prefixes.py | 3 + .../test_global_vm_extension_policies.py | 6 + .../compute_v1beta/test_health_checks.py | 6 + .../unit/gapic/compute_v1beta/test_images.py | 3 + ..._instance_group_manager_resize_requests.py | 3 + .../test_instance_group_managers.py | 15 ++ .../compute_v1beta/test_instance_groups.py | 9 + .../compute_v1beta/test_instance_templates.py | 6 + .../gapic/compute_v1beta/test_instances.py | 9 + .../test_instant_snapshot_groups.py | 3 + .../compute_v1beta/test_instant_snapshots.py | 6 + .../test_interconnect_attachment_groups.py | 3 + .../test_interconnect_attachments.py | 6 + .../test_interconnect_groups.py | 3 + .../test_interconnect_locations.py | 3 + .../test_interconnect_remote_locations.py | 3 + .../compute_v1beta/test_interconnects.py | 3 + .../gapic/compute_v1beta/test_licenses.py | 3 + .../compute_v1beta/test_machine_images.py | 3 + .../compute_v1beta/test_machine_types.py | 6 + .../test_network_attachments.py | 6 + .../test_network_edge_security_services.py | 3 + .../test_network_endpoint_groups.py | 9 + .../test_network_firewall_policies.py | 6 + .../compute_v1beta/test_network_profiles.py | 3 + .../gapic/compute_v1beta/test_networks.py | 6 + .../gapic/compute_v1beta/test_node_groups.py | 9 + .../compute_v1beta/test_node_templates.py | 6 + .../gapic/compute_v1beta/test_node_types.py | 6 + .../test_organization_security_policies.py | 3 + .../compute_v1beta/test_packet_mirrorings.py | 6 + .../compute_v1beta/test_preview_features.py | 3 + .../gapic/compute_v1beta/test_projects.py | 6 + .../test_public_advertised_prefixes.py | 3 + .../test_public_delegated_prefixes.py | 6 + .../compute_v1beta/test_region_autoscalers.py | 3 + .../test_region_backend_buckets.py | 6 + .../test_region_backend_services.py | 6 + .../compute_v1beta/test_region_commitments.py | 6 + .../test_region_composite_health_checks.py | 6 + .../compute_v1beta/test_region_disk_types.py | 3 + .../gapic/compute_v1beta/test_region_disks.py | 3 + ...test_region_health_aggregation_policies.py | 6 + .../test_region_health_check_services.py | 6 + .../test_region_health_checks.py | 3 + .../test_region_health_sources.py | 6 + ..._instance_group_manager_resize_requests.py | 3 + .../test_region_instance_group_managers.py | 12 + .../test_region_instance_groups.py | 6 + .../test_region_instance_templates.py | 3 + .../test_region_instant_snapshot_groups.py | 3 + .../test_region_instant_snapshots.py | 3 + .../test_region_multi_mig_members.py | 3 + .../compute_v1beta/test_region_multi_migs.py | 3 + .../test_region_network_endpoint_groups.py | 6 + .../test_region_network_firewall_policies.py | 3 + .../test_region_network_policies.py | 6 + .../test_region_notification_endpoints.py | 6 + .../compute_v1beta/test_region_operations.py | 3 + .../test_region_security_policies.py | 3 + .../compute_v1beta/test_region_snapshots.py | 3 + .../test_region_ssl_certificates.py | 3 + .../test_region_ssl_policies.py | 3 + .../test_region_target_http_proxies.py | 3 + .../test_region_target_https_proxies.py | 3 + .../test_region_target_tcp_proxies.py | 3 + .../compute_v1beta/test_region_url_maps.py | 3 + .../gapic/compute_v1beta/test_region_zones.py | 3 + .../unit/gapic/compute_v1beta/test_regions.py | 3 + .../compute_v1beta/test_reservation_blocks.py | 3 + .../compute_v1beta/test_reservation_slots.py | 3 + .../test_reservation_sub_blocks.py | 3 + .../gapic/compute_v1beta/test_reservations.py | 6 + .../compute_v1beta/test_resource_policies.py | 6 + .../compute_v1beta/test_rollout_plans.py | 3 + .../gapic/compute_v1beta/test_rollouts.py | 3 + .../unit/gapic/compute_v1beta/test_routers.py | 18 ++ .../unit/gapic/compute_v1beta/test_routes.py | 3 + .../compute_v1beta/test_security_policies.py | 6 + .../test_service_attachments.py | 6 + .../compute_v1beta/test_snapshot_groups.py | 3 + .../gapic/compute_v1beta/test_snapshots.py | 6 + .../compute_v1beta/test_ssl_certificates.py | 6 + .../gapic/compute_v1beta/test_ssl_policies.py | 6 + .../compute_v1beta/test_storage_pool_types.py | 6 + .../compute_v1beta/test_storage_pools.py | 9 + .../gapic/compute_v1beta/test_subnetworks.py | 9 + .../test_target_grpc_proxies.py | 3 + .../test_target_http_proxies.py | 6 + .../test_target_https_proxies.py | 6 + .../compute_v1beta/test_target_instances.py | 6 + .../gapic/compute_v1beta/test_target_pools.py | 6 + .../compute_v1beta/test_target_ssl_proxies.py | 3 + .../compute_v1beta/test_target_tcp_proxies.py | 6 + .../test_target_vpn_gateways.py | 6 + .../gapic/compute_v1beta/test_url_maps.py | 6 + .../gapic/compute_v1beta/test_vpn_gateways.py | 6 + .../gapic/compute_v1beta/test_vpn_tunnels.py | 6 + .../gapic/compute_v1beta/test_wire_groups.py | 3 + .../compute_v1beta/test_zone_operations.py | 3 + .../test_zone_vm_extension_policies.py | 3 + .../unit/gapic/compute_v1beta/test_zones.py | 3 + packages/google-cloud-compute/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../compute_v1/test_accelerator_types.py | 6 + .../unit/gapic/compute_v1/test_addresses.py | 6 + .../unit/gapic/compute_v1/test_autoscalers.py | 6 + .../gapic/compute_v1/test_backend_buckets.py | 9 + .../gapic/compute_v1/test_backend_services.py | 9 + .../compute_v1/test_cross_site_networks.py | 3 + .../unit/gapic/compute_v1/test_disk_types.py | 6 + .../tests/unit/gapic/compute_v1/test_disks.py | 6 + .../compute_v1/test_external_vpn_gateways.py | 3 + .../compute_v1/test_firewall_policies.py | 3 + .../unit/gapic/compute_v1/test_firewalls.py | 3 + .../gapic/compute_v1/test_forwarding_rules.py | 6 + .../compute_v1/test_future_reservations.py | 6 + .../gapic/compute_v1/test_global_addresses.py | 3 + .../test_global_forwarding_rules.py | 3 + .../test_global_network_endpoint_groups.py | 6 + .../compute_v1/test_global_operations.py | 6 + .../test_global_organization_operations.py | 3 + .../test_global_public_delegated_prefixes.py | 3 + .../test_global_vm_extension_policies.py | 6 + .../gapic/compute_v1/test_health_checks.py | 6 + .../unit/gapic/compute_v1/test_images.py | 3 + ..._instance_group_manager_resize_requests.py | 3 + .../test_instance_group_managers.py | 15 ++ .../gapic/compute_v1/test_instance_groups.py | 9 + .../compute_v1/test_instance_templates.py | 6 + .../unit/gapic/compute_v1/test_instances.py | 9 + .../test_instant_snapshot_groups.py | 3 + .../compute_v1/test_instant_snapshots.py | 6 + .../test_interconnect_attachment_groups.py | 3 + .../test_interconnect_attachments.py | 6 + .../compute_v1/test_interconnect_groups.py | 3 + .../compute_v1/test_interconnect_locations.py | 3 + .../test_interconnect_remote_locations.py | 3 + .../gapic/compute_v1/test_interconnects.py | 3 + .../unit/gapic/compute_v1/test_licenses.py | 3 + .../gapic/compute_v1/test_machine_images.py | 3 + .../gapic/compute_v1/test_machine_types.py | 6 + .../compute_v1/test_network_attachments.py | 6 + .../test_network_edge_security_services.py | 3 + .../test_network_endpoint_groups.py | 9 + .../test_network_firewall_policies.py | 6 + .../gapic/compute_v1/test_network_profiles.py | 3 + .../unit/gapic/compute_v1/test_networks.py | 6 + .../unit/gapic/compute_v1/test_node_groups.py | 9 + .../gapic/compute_v1/test_node_templates.py | 6 + .../unit/gapic/compute_v1/test_node_types.py | 6 + .../test_organization_security_policies.py | 3 + .../compute_v1/test_packet_mirrorings.py | 6 + .../gapic/compute_v1/test_preview_features.py | 3 + .../unit/gapic/compute_v1/test_projects.py | 6 + .../test_public_advertised_prefixes.py | 3 + .../test_public_delegated_prefixes.py | 6 + .../compute_v1/test_region_autoscalers.py | 3 + .../compute_v1/test_region_backend_buckets.py | 6 + .../test_region_backend_services.py | 6 + .../compute_v1/test_region_commitments.py | 6 + .../test_region_composite_health_checks.py | 6 + .../compute_v1/test_region_disk_types.py | 3 + .../gapic/compute_v1/test_region_disks.py | 3 + ...test_region_health_aggregation_policies.py | 6 + .../test_region_health_check_services.py | 6 + .../compute_v1/test_region_health_checks.py | 3 + .../compute_v1/test_region_health_sources.py | 6 + ..._instance_group_manager_resize_requests.py | 3 + .../test_region_instance_group_managers.py | 12 + .../compute_v1/test_region_instance_groups.py | 6 + .../test_region_instance_templates.py | 3 + .../test_region_instant_snapshot_groups.py | 3 + .../test_region_instant_snapshots.py | 3 + .../test_region_network_endpoint_groups.py | 6 + .../test_region_network_firewall_policies.py | 3 + .../test_region_notification_endpoints.py | 6 + .../compute_v1/test_region_operations.py | 3 + .../test_region_security_policies.py | 3 + .../gapic/compute_v1/test_region_snapshots.py | 3 + .../test_region_ssl_certificates.py | 3 + .../compute_v1/test_region_ssl_policies.py | 3 + .../test_region_target_http_proxies.py | 3 + .../test_region_target_https_proxies.py | 3 + .../test_region_target_tcp_proxies.py | 3 + .../gapic/compute_v1/test_region_url_maps.py | 3 + .../gapic/compute_v1/test_region_zones.py | 3 + .../unit/gapic/compute_v1/test_regions.py | 3 + .../compute_v1/test_reservation_blocks.py | 3 + .../compute_v1/test_reservation_slots.py | 3 + .../compute_v1/test_reservation_sub_blocks.py | 3 + .../gapic/compute_v1/test_reservations.py | 6 + .../compute_v1/test_resource_policies.py | 6 + .../gapic/compute_v1/test_rollout_plans.py | 3 + .../unit/gapic/compute_v1/test_rollouts.py | 3 + .../unit/gapic/compute_v1/test_routers.py | 15 ++ .../unit/gapic/compute_v1/test_routes.py | 3 + .../compute_v1/test_security_policies.py | 6 + .../compute_v1/test_service_attachments.py | 6 + .../unit/gapic/compute_v1/test_snapshots.py | 3 + .../gapic/compute_v1/test_ssl_certificates.py | 6 + .../gapic/compute_v1/test_ssl_policies.py | 6 + .../compute_v1/test_storage_pool_types.py | 6 + .../gapic/compute_v1/test_storage_pools.py | 9 + .../unit/gapic/compute_v1/test_subnetworks.py | 9 + .../compute_v1/test_target_grpc_proxies.py | 3 + .../compute_v1/test_target_http_proxies.py | 6 + .../compute_v1/test_target_https_proxies.py | 6 + .../gapic/compute_v1/test_target_instances.py | 6 + .../gapic/compute_v1/test_target_pools.py | 6 + .../compute_v1/test_target_ssl_proxies.py | 3 + .../compute_v1/test_target_tcp_proxies.py | 6 + .../compute_v1/test_target_vpn_gateways.py | 6 + .../unit/gapic/compute_v1/test_url_maps.py | 6 + .../gapic/compute_v1/test_vpn_gateways.py | 6 + .../unit/gapic/compute_v1/test_vpn_tunnels.py | 6 + .../unit/gapic/compute_v1/test_wire_groups.py | 3 + .../gapic/compute_v1/test_zone_operations.py | 3 + .../test_zone_vm_extension_policies.py | 3 + .../tests/unit/gapic/compute_v1/test_zones.py | 3 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-cloud-config/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../tests/unit/gapic/config_v1/test_config.py | 72 ++++++ .../google-cloud-configdelivery/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../configdelivery_v1/test_config_delivery.py | 40 +++ .../test_config_delivery.py | 40 +++ .../test_config_delivery.py | 40 +++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_contact_center_insights.py | 80 ++++++ packages/google-cloud-container/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../container_v1/test_cluster_manager.py | 8 + .../container_v1beta1/test_cluster_manager.py | 5 + .../google-cloud-containeranalysis/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../google-cloud-contentwarehouse/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 14 ++ .../test_document_link_service.py | 8 + .../test_document_schema_service.py | 8 + .../test_document_service.py | 8 + .../test_rule_set_service.py | 8 + .../test_synonym_set_service.py | 8 + packages/google-cloud-data-fusion/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/data_fusion_v1/test_data_fusion.py | 16 ++ packages/google-cloud-data-qna/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../google-cloud-databasecenter/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_database_center.py | 40 +++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../datacatalog_lineage_v1/test_lineage.py | 40 +++ packages/google-cloud-datacatalog/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../gapic/datacatalog_v1/test_data_catalog.py | 20 ++ .../datacatalog_v1/test_policy_tag_manager.py | 10 + .../datacatalog_v1beta1/test_data_catalog.py | 20 ++ .../test_policy_tag_manager.py | 10 + .../google-cloud-dataflow-client/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../dataflow_v1beta3/test_jobs_v1_beta3.py | 16 ++ .../test_messages_v1_beta3.py | 8 + .../dataflow_v1beta3/test_metrics_v1_beta3.py | 16 ++ packages/google-cloud-dataform/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../unit/gapic/dataform_v1/test_dataform.py | 128 ++++++++++ .../gapic/dataform_v1beta1/test_dataform.py | 128 ++++++++++ packages/google-cloud-datalabeling/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_data_labeling_service.py | 45 ++++ packages/google-cloud-dataplex/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_business_glossary_service.py | 24 ++ .../gapic/dataplex_v1/test_catalog_service.py | 64 +++++ .../gapic/dataplex_v1/test_cmek_service.py | 8 + .../dataplex_v1/test_data_product_service.py | 16 ++ .../dataplex_v1/test_data_scan_service.py | 16 ++ .../dataplex_v1/test_data_taxonomy_service.py | 24 ++ .../dataplex_v1/test_dataplex_service.py | 64 +++++ .../dataplex_v1/test_metadata_service.py | 16 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../metastore_v1/test_dataproc_metastore.py | 24 ++ .../test_dataproc_metastore_federation.py | 8 + .../test_dataproc_metastore.py | 24 ++ .../test_dataproc_metastore_federation.py | 8 + .../test_dataproc_metastore.py | 24 ++ .../test_dataproc_metastore_federation.py | 8 + packages/google-cloud-dataproc/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_autoscaling_policy_service.py | 8 + .../dataproc_v1/test_batch_controller.py | 8 + .../dataproc_v1/test_cluster_controller.py | 8 + .../gapic/dataproc_v1/test_job_controller.py | 8 + .../dataproc_v1/test_session_controller.py | 8 + .../test_session_template_controller.py | 8 + .../test_workflow_template_service.py | 8 + packages/google-cloud-datastore/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_datastore_admin.py | 8 + packages/google-cloud-datastream/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../gapic/datastream_v1/test_datastream.py | 48 ++++ .../datastream_v1alpha1/test_datastream.py | 40 +++ packages/google-cloud-deploy/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../unit/gapic/deploy_v1/test_cloud_deploy.py | 72 ++++++ .../google-cloud-developerconnect/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_developer_connect.py | 48 ++++ .../test_insights_config_service.py | 16 ++ .../google-cloud-devicestreaming/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_direct_access_service.py | 8 + .../google-cloud-dialogflow-cx/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/dialogflowcx_v3/test_agents.py | 8 + .../gapic/dialogflowcx_v3/test_changelogs.py | 8 + .../gapic/dialogflowcx_v3/test_deployments.py | 8 + .../dialogflowcx_v3/test_entity_types.py | 8 + .../dialogflowcx_v3/test_environments.py | 24 ++ .../gapic/dialogflowcx_v3/test_examples.py | 8 + .../gapic/dialogflowcx_v3/test_experiments.py | 8 + .../unit/gapic/dialogflowcx_v3/test_flows.py | 8 + .../gapic/dialogflowcx_v3/test_generators.py | 8 + .../gapic/dialogflowcx_v3/test_intents.py | 8 + .../unit/gapic/dialogflowcx_v3/test_pages.py | 8 + .../gapic/dialogflowcx_v3/test_playbooks.py | 16 ++ .../test_security_settings_service.py | 8 + .../test_session_entity_types.py | 8 + .../gapic/dialogflowcx_v3/test_test_cases.py | 16 ++ .../unit/gapic/dialogflowcx_v3/test_tools.py | 16 ++ .../test_transition_route_groups.py | 8 + .../gapic/dialogflowcx_v3/test_versions.py | 8 + .../gapic/dialogflowcx_v3/test_webhooks.py | 8 + .../gapic/dialogflowcx_v3beta1/test_agents.py | 8 + .../dialogflowcx_v3beta1/test_changelogs.py | 8 + .../test_conversation_history.py | 8 + .../dialogflowcx_v3beta1/test_deployments.py | 8 + .../dialogflowcx_v3beta1/test_entity_types.py | 8 + .../dialogflowcx_v3beta1/test_environments.py | 24 ++ .../dialogflowcx_v3beta1/test_examples.py | 8 + .../dialogflowcx_v3beta1/test_experiments.py | 8 + .../gapic/dialogflowcx_v3beta1/test_flows.py | 8 + .../dialogflowcx_v3beta1/test_generators.py | 8 + .../dialogflowcx_v3beta1/test_intents.py | 8 + .../gapic/dialogflowcx_v3beta1/test_pages.py | 8 + .../dialogflowcx_v3beta1/test_playbooks.py | 16 ++ .../test_security_settings_service.py | 8 + .../test_session_entity_types.py | 8 + .../dialogflowcx_v3beta1/test_test_cases.py | 16 ++ .../gapic/dialogflowcx_v3beta1/test_tools.py | 16 ++ .../test_transition_route_groups.py | 8 + .../dialogflowcx_v3beta1/test_versions.py | 8 + .../dialogflowcx_v3beta1/test_webhooks.py | 8 + packages/google-cloud-dialogflow/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/dialogflow_v2/test_agents.py | 8 + .../dialogflow_v2/test_answer_records.py | 8 + .../unit/gapic/dialogflow_v2/test_contexts.py | 8 + .../test_conversation_datasets.py | 8 + .../dialogflow_v2/test_conversation_models.py | 16 ++ .../test_conversation_profiles.py | 8 + .../gapic/dialogflow_v2/test_conversations.py | 16 ++ .../gapic/dialogflow_v2/test_documents.py | 8 + .../gapic/dialogflow_v2/test_entity_types.py | 8 + .../gapic/dialogflow_v2/test_environments.py | 16 ++ .../test_generator_evaluations.py | 8 + .../gapic/dialogflow_v2/test_generators.py | 8 + .../unit/gapic/dialogflow_v2/test_intents.py | 8 + .../dialogflow_v2/test_knowledge_bases.py | 8 + .../gapic/dialogflow_v2/test_participants.py | 8 + .../test_session_entity_types.py | 8 + .../gapic/dialogflow_v2/test_sip_trunks.py | 8 + .../unit/gapic/dialogflow_v2/test_tools.py | 8 + .../unit/gapic/dialogflow_v2/test_versions.py | 8 + .../gapic/dialogflow_v2beta1/test_agents.py | 8 + .../dialogflow_v2beta1/test_answer_records.py | 8 + .../gapic/dialogflow_v2beta1/test_contexts.py | 8 + .../test_conversation_profiles.py | 8 + .../dialogflow_v2beta1/test_conversations.py | 16 ++ .../dialogflow_v2beta1/test_documents.py | 8 + .../dialogflow_v2beta1/test_entity_types.py | 8 + .../dialogflow_v2beta1/test_environments.py | 16 ++ .../test_generator_evaluations.py | 8 + .../dialogflow_v2beta1/test_generators.py | 8 + .../gapic/dialogflow_v2beta1/test_intents.py | 8 + .../test_knowledge_bases.py | 8 + .../dialogflow_v2beta1/test_participants.py | 16 ++ .../dialogflow_v2beta1/test_phone_numbers.py | 8 + .../test_session_entity_types.py | 8 + .../dialogflow_v2beta1/test_sip_trunks.py | 8 + .../gapic/dialogflow_v2beta1/test_tools.py | 8 + .../gapic/dialogflow_v2beta1/test_versions.py | 8 + .../google-cloud-discoveryengine/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_control_service.py | 8 + .../test_conversational_search_service.py | 16 ++ .../test_data_store_service.py | 8 + .../test_document_service.py | 8 + .../discoveryengine_v1/test_engine_service.py | 8 + .../test_identity_mapping_store_service.py | 16 ++ .../discoveryengine_v1/test_schema_service.py | 8 + .../discoveryengine_v1/test_search_service.py | 16 ++ .../test_session_service.py | 8 + .../test_site_search_engine_service.py | 16 ++ .../test_user_license_service.py | 8 + .../test_chunk_service.py | 8 + .../test_control_service.py | 8 + .../test_conversational_search_service.py | 16 ++ .../test_data_store_service.py | 8 + .../test_document_service.py | 8 + .../test_engine_service.py | 8 + .../test_evaluation_service.py | 16 ++ .../test_sample_query_service.py | 8 + .../test_sample_query_set_service.py | 8 + .../test_schema_service.py | 8 + .../test_search_service.py | 8 + .../test_serving_config_service.py | 8 + .../test_session_service.py | 16 ++ .../test_site_search_engine_service.py | 16 ++ .../test_assistant_service.py | 8 + .../test_control_service.py | 8 + .../test_conversational_search_service.py | 16 ++ .../test_data_store_service.py | 8 + .../test_document_service.py | 8 + .../test_engine_service.py | 8 + .../test_evaluation_service.py | 16 ++ .../test_identity_mapping_store_service.py | 16 ++ .../test_license_config_service.py | 8 + .../test_sample_query_service.py | 8 + .../test_sample_query_set_service.py | 8 + .../test_schema_service.py | 8 + .../test_search_service.py | 16 ++ .../test_serving_config_service.py | 8 + .../test_session_service.py | 8 + .../test_site_search_engine_service.py | 16 ++ .../test_user_license_service.py | 8 + packages/google-cloud-dlp/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/dlp_v2/test_dlp_service.py | 96 ++++++++ packages/google-cloud-dms/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_data_migration_service.py | 35 +++ packages/google-cloud-documentai/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_document_processor_service.py | 32 +++ .../test_document_processor_service.py | 32 +++ .../test_document_service.py | 8 + packages/google-cloud-domains/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/domains_v1/test_domains.py | 8 + .../gapic/domains_v1beta1/test_domains.py | 8 + .../google-cloud-edgecontainer/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../edgecontainer_v1/test_edge_container.py | 32 +++ packages/google-cloud-edgenetwork/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/edgenetwork_v1/test_edge_network.py | 48 ++++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + ...test_enterprise_knowledge_graph_service.py | 8 + .../google-cloud-error-reporting/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_error_stats_service.py | 16 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_essential_contacts_service.py | 16 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-cloud-eventarc/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../unit/gapic/eventarc_v1/test_eventarc.py | 72 ++++++ packages/google-cloud-filestore/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_cloud_filestore_manager.py | 24 ++ .../google-cloud-financialservices/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/financialservices_v1/test_aml.py | 56 +++++ packages/google-cloud-firestore/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_firestore_admin.py | 16 ++ .../unit/gapic/firestore_v1/test_firestore.py | 24 ++ packages/google-cloud-functions/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_cloud_functions_service.py | 8 + .../functions_v2/test_function_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_gdc_hardware_management.py | 64 +++++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_data_agent_service.py | 16 ++ .../test_data_chat_service.py | 16 ++ .../test_data_agent_service.py | 16 ++ .../test_data_chat_service.py | 16 ++ .../test_data_agent_service.py | 16 ++ .../test_data_chat_service.py | 16 ++ packages/google-cloud-gke-backup/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../gke_backup_v1/test_backup_for_gke.py | 80 ++++++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-cloud-gke-hub/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/gkehub_v1/test_gke_hub.py | 80 ++++++ .../test_gke_hub_membership_service.py | 8 + .../google-cloud-gke-multicloud/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_attached_clusters.py | 8 + .../gke_multicloud_v1/test_aws_clusters.py | 16 ++ .../gke_multicloud_v1/test_azure_clusters.py | 24 ++ .../google-cloud-gkerecommender/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_gke_inference_quickstart.py | 32 +++ packages/google-cloud-gsuiteaddons/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../gsuiteaddons_v1/test_g_suite_add_ons.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_hypercompute_cluster.py | 8 + .../test_hypercompute_cluster.py | 8 + packages/google-cloud-iam-logging/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + packages/google-cloud-iam/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../tests/unit/gapic/iam_admin_v1/test_iam.py | 20 ++ .../tests/unit/gapic/iam_v2/test_policies.py | 8 + .../unit/gapic/iam_v2beta/test_policies.py | 5 + .../unit/gapic/iam_v3/test_policy_bindings.py | 16 ++ ...test_principal_access_boundary_policies.py | 16 ++ .../gapic/iam_v3beta/test_access_policies.py | 16 ++ .../gapic/iam_v3beta/test_policy_bindings.py | 16 ++ ...test_principal_access_boundary_policies.py | 16 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-cloud-iap/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + ...test_identity_aware_proxy_admin_service.py | 8 + ...est_identity_aware_proxy_o_auth_service.py | 8 + packages/google-cloud-ids/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../tests/unit/gapic/ids_v1/test_ids.py | 8 + .../google-cloud-kms-inventory/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_key_dashboard_service.py | 8 + .../test_key_tracking_service.py | 8 + packages/google-cloud-kms/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../tests/unit/gapic/kms_v1/test_autokey.py | 8 + .../unit/gapic/kms_v1/test_ekm_service.py | 8 + .../unit/gapic/kms_v1/test_hsm_management.py | 16 ++ .../kms_v1/test_key_management_service.py | 40 +++ packages/google-cloud-language/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../google-cloud-licensemanager/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../licensemanager_v1/test_license_manager.py | 32 +++ .../google-cloud-life-sciences/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../google-cloud-locationfinder/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_cloud_location_finder.py | 16 ++ packages/google-cloud-logging/noxfile.py | 18 +- .../testing/constraints-3.15.txt | 12 + .../logging_v2/test_config_service_v2.py | 25 ++ .../logging_v2/test_logging_service_v2.py | 15 ++ .../logging_v2/test_metrics_service_v2.py | 5 + packages/google-cloud-lustre/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../tests/unit/gapic/lustre_v1/test_lustre.py | 8 + .../google-cloud-maintenance-api/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../maintenance_api_v1/test_maintenance.py | 16 ++ .../test_maintenance.py | 16 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_managed_identities_service.py | 5 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-cloud-managedkafka/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../managedkafka_v1/test_managed_kafka.py | 32 +++ .../test_managed_kafka_connect.py | 16 ++ .../google-cloud-media-translation/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-cloud-memcache/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/memcache_v1/test_cloud_memcache.py | 8 + .../memcache_v1beta2/test_cloud_memcache.py | 8 + packages/google-cloud-memorystore/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/memorystore_v1/test_memorystore.py | 24 ++ .../memorystore_v1beta/test_memorystore.py | 8 + .../google-cloud-migrationcenter/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_migration_center.py | 72 ++++++ packages/google-cloud-modelarmor/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/modelarmor_v1/test_model_armor.py | 8 + .../modelarmor_v1beta/test_model_armor.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_dashboards_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-cloud-monitoring/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_alert_policy_service.py | 5 + .../gapic/monitoring_v3/test_group_service.py | 10 + .../monitoring_v3/test_metric_service.py | 15 ++ .../test_notification_channel_service.py | 10 + .../gapic/monitoring_v3/test_query_service.py | 5 + .../test_service_monitoring_service.py | 10 + .../monitoring_v3/test_snooze_service.py | 5 + .../test_uptime_check_service.py | 10 + packages/google-cloud-netapp/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/netapp_v1/test_net_app.py | 88 +++++++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_cross_network_automation_service.py | 20 ++ .../test_data_transfer_service.py | 15 ++ .../test_hub_service.py | 35 +++ .../test_internal_range_service.py | 5 + .../test_policy_based_routing_service.py | 5 + .../test_hub_service.py | 10 + .../test_data_transfer_service.py | 15 ++ .../test_hub_service.py | 40 +++ .../test_policy_based_routing_service.py | 5 + .../test_transport_manager.py | 10 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + ...test_organization_vpc_flow_logs_service.py | 8 + .../test_reachability_service.py | 8 + .../test_vpc_flow_logs_service.py | 24 ++ .../google-cloud-network-security/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_address_group_service.py | 16 ++ .../test_dns_threat_detector_service.py | 8 + .../test_firewall_activation.py | 24 ++ .../network_security_v1/test_intercept.py | 32 +++ .../network_security_v1/test_mirroring.py | 32 +++ .../test_network_security.py | 72 ++++++ ...test_organization_address_group_service.py | 16 ++ ...nization_security_profile_group_service.py | 16 ++ .../test_security_profile_group_service.py | 16 ++ .../test_sse_realm_service.py | 16 ++ .../test_dns_threat_detector_service.py | 8 + .../test_firewall_activation.py | 16 ++ .../test_intercept.py | 32 +++ .../test_mirroring.py | 32 +++ .../test_network_security.py | 72 ++++++ ...nization_security_profile_group_service.py | 16 ++ .../test_sse_gateway_service.py | 16 ++ .../test_sse_realm_service.py | 24 ++ .../test_dns_threat_detector_service.py | 8 + .../test_network_security.py | 24 ++ .../google-cloud-network-services/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../network_services_v1/test_dep_service.py | 32 +++ .../test_network_services.py | 112 +++++++++ packages/google-cloud-notebooks/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_managed_notebook_service.py | 5 + .../notebooks_v1/test_notebook_service.py | 20 ++ .../test_notebook_service.py | 16 ++ .../notebooks_v2/test_notebook_service.py | 8 + packages/google-cloud-optimization/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../google-cloud-oracledatabase/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../oracledatabase_v1/test_oracle_database.py | 232 ++++++++++++++++++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/service_v1/test_environments.py | 32 +++ .../gapic/service_v1/test_image_versions.py | 8 + .../service_v1beta1/test_environments.py | 32 +++ .../service_v1beta1/test_image_versions.py | 8 + packages/google-cloud-org-policy/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/orgpolicy_v2/test_org_policy.py | 24 ++ packages/google-cloud-os-config/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../osconfig_v1/test_os_config_service.py | 24 ++ .../test_os_config_zonal_service.py | 40 +++ .../test_os_config_zonal_service.py | 48 ++++ packages/google-cloud-os-login/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../google-cloud-parallelstore/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../parallelstore_v1/test_parallelstore.py | 8 + .../test_parallelstore.py | 8 + .../google-cloud-parametermanager/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_parameter_manager.py | 16 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../google-cloud-policysimulator/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + ...t_org_policy_violations_preview_service.py | 16 ++ .../policysimulator_v1/test_simulator.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 14 ++ packages/google-cloud-private-ca/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_certificate_authority_service.py | 40 +++ .../test_certificate_authority_service.py | 32 +++ .../google-cloud-private-catalog/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_private_catalog.py | 24 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_privileged_access_manager.py | 32 +++ packages/google-cloud-pubsub/noxfile.py | 18 +- .../testing/constraints-3.15.txt | 13 + .../unit/gapic/pubsub_v1/test_publisher.py | 24 ++ .../gapic/pubsub_v1/test_schema_service.py | 16 ++ .../unit/gapic/pubsub_v1/test_subscriber.py | 16 ++ packages/google-cloud-quotas/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/cloudquotas_v1/test_cloud_quotas.py | 16 ++ .../cloudquotas_v1beta/test_cloud_quotas.py | 16 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_rapid_migration_assessment.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_recaptcha_enterprise_service.py | 30 +++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_catalog_service.py | 8 + .../test_prediction_api_key_registry.py | 8 + .../test_prediction_service.py | 8 + .../test_user_event_service.py | 8 + packages/google-cloud-recommender/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/recommender_v1/test_recommender.py | 16 ++ .../recommender_v1beta1/test_recommender.py | 32 +++ .../google-cloud-redis-cluster/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_cloud_redis_cluster.py | 24 ++ .../test_cloud_redis_cluster.py | 24 ++ packages/google-cloud-redis/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/redis_v1/test_cloud_redis.py | 8 + .../gapic/redis_v1beta1/test_cloud_redis.py | 8 + .../google-cloud-resource-manager/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../gapic/resourcemanager_v3/test_folders.py | 16 ++ .../resourcemanager_v3/test_organizations.py | 8 + .../gapic/resourcemanager_v3/test_projects.py | 16 ++ .../resourcemanager_v3/test_tag_bindings.py | 16 ++ .../resourcemanager_v3/test_tag_holds.py | 8 + .../gapic/resourcemanager_v3/test_tag_keys.py | 8 + .../resourcemanager_v3/test_tag_values.py | 8 + packages/google-cloud-retail/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/retail_v2/test_catalog_service.py | 8 + .../gapic/retail_v2/test_control_service.py | 8 + .../gapic/retail_v2/test_model_service.py | 8 + .../gapic/retail_v2/test_product_service.py | 8 + .../gapic/retail_v2/test_search_service.py | 8 + .../retail_v2/test_serving_config_service.py | 8 + .../retail_v2alpha/test_catalog_service.py | 8 + .../retail_v2alpha/test_control_service.py | 8 + .../retail_v2alpha/test_model_service.py | 8 + .../retail_v2alpha/test_product_service.py | 8 + .../retail_v2alpha/test_search_service.py | 8 + .../test_serving_config_service.py | 8 + .../retail_v2beta/test_catalog_service.py | 8 + .../retail_v2beta/test_control_service.py | 8 + .../gapic/retail_v2beta/test_model_service.py | 8 + .../retail_v2beta/test_product_service.py | 8 + .../retail_v2beta/test_search_service.py | 8 + .../test_serving_config_service.py | 8 + packages/google-cloud-run/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../unit/gapic/run_v2/test_executions.py | 8 + .../tests/unit/gapic/run_v2/test_instances.py | 8 + .../tests/unit/gapic/run_v2/test_jobs.py | 8 + .../tests/unit/gapic/run_v2/test_revisions.py | 8 + .../tests/unit/gapic/run_v2/test_services.py | 8 + .../tests/unit/gapic/run_v2/test_tasks.py | 8 + .../unit/gapic/run_v2/test_worker_pools.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_saas_deployments.py | 48 ++++ .../test_saas_rollouts.py | 16 ++ packages/google-cloud-scheduler/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../scheduler_v1/test_cloud_scheduler.py | 8 + .../scheduler_v1beta1/test_cloud_scheduler.py | 8 + .../google-cloud-secret-manager/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_secret_manager_service.py | 16 ++ .../test_secret_manager_service.py | 16 ++ .../test_secret_manager_service.py | 16 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_secure_source_manager.py | 80 ++++++ .../google-cloud-security-publicca/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../google-cloud-securitycenter/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../securitycenter_v1/test_security_center.py | 136 ++++++++++ .../test_security_center.py | 40 +++ .../test_security_center.py | 48 ++++ .../securitycenter_v2/test_security_center.py | 72 ++++++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_security_center_management.py | 56 +++++ .../google-cloud-service-control/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../google-cloud-service-directory/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_registration_service.py | 24 ++ .../test_registration_service.py | 24 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_service_manager.py | 24 ++ .../google-cloud-service-usage/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../service_usage_v1/test_service_usage.py | 8 + .../google-cloud-servicehealth/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../servicehealth_v1/test_service_health.py | 24 ++ packages/google-cloud-shell/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../google-cloud-source-context/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../testing/constraints-3.15.txt | 12 + .../test_database_admin.py | 48 ++++ .../test_instance_admin.py | 40 +++ .../unit/gapic/spanner_v1/test_spanner.py | 8 + packages/google-cloud-speech/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/speech_v1/test_adaptation.py | 16 ++ .../gapic/speech_v1p1beta1/test_adaptation.py | 16 ++ .../tests/unit/gapic/speech_v2/test_speech.py | 24 ++ .../google-cloud-storage-control/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_storage_control.py | 39 +++ .../google-cloud-storage-transfer/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_storage_transfer_service.py | 16 ++ packages/google-cloud-storage/noxfile.py | 16 +- .../testing/constraints-3.15.txt | 13 + .../unit/gapic/_storage_v2/test_storage.py | 10 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_storage_batch_operations.py | 16 ++ .../google-cloud-storageinsights/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_storage_insights.py | 24 ++ packages/google-cloud-support/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_case_attachment_service.py | 8 + .../gapic/support_v2/test_case_service.py | 24 ++ .../gapic/support_v2/test_comment_service.py | 8 + .../test_case_attachment_service.py | 8 + .../gapic/support_v2beta/test_case_service.py | 24 ++ .../support_v2beta/test_comment_service.py | 8 + .../gapic/support_v2beta/test_feed_service.py | 8 + packages/google-cloud-talent/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/talent_v4/test_company_service.py | 8 + .../unit/gapic/talent_v4/test_job_service.py | 8 + .../gapic/talent_v4/test_tenant_service.py | 8 + .../talent_v4beta1/test_company_service.py | 8 + .../gapic/talent_v4beta1/test_job_service.py | 24 ++ .../talent_v4beta1/test_tenant_service.py | 8 + packages/google-cloud-tasks/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../unit/gapic/tasks_v2/test_cloud_tasks.py | 16 ++ .../gapic/tasks_v2beta2/test_cloud_tasks.py | 16 ++ .../gapic/tasks_v2beta3/test_cloud_tasks.py | 16 ++ .../google-cloud-telcoautomation/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_telco_automation.py | 80 ++++++ .../test_telco_automation.py | 80 ++++++ packages/google-cloud-texttospeech/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-cloud-tpu/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../tests/unit/gapic/tpu_v1/test_tpu.py | 15 ++ .../tests/unit/gapic/tpu_v2/test_tpu.py | 32 +++ .../tests/unit/gapic/tpu_v2alpha1/test_tpu.py | 25 ++ packages/google-cloud-trace/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../unit/gapic/trace_v1/test_trace_service.py | 8 + packages/google-cloud-translate/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../translate_v3/test_translation_service.py | 64 +++++ .../test_translation_service.py | 8 + packages/google-cloud-vectorsearch/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_data_object_search_service.py | 16 ++ .../test_vector_search_service.py | 16 ++ .../test_data_object_search_service.py | 16 ++ .../test_vector_search_service.py | 16 ++ .../google-cloud-video-live-stream/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../live_stream_v1/test_livestream_service.py | 48 ++++ .../google-cloud-video-stitcher/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_video_stitcher_service.py | 56 +++++ .../google-cloud-video-transcoder/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../transcoder_v1/test_transcoder_service.py | 16 ++ .../google-cloud-videointelligence/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-cloud-vision/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/vision_v1/test_product_search.py | 32 +++ .../vision_v1p3beta1/test_product_search.py | 32 +++ .../vision_v1p4beta1/test_product_search.py | 32 +++ packages/google-cloud-visionai/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../gapic/visionai_v1/test_app_platform.py | 32 +++ .../visionai_v1/test_live_video_analytics.py | 32 +++ .../gapic/visionai_v1/test_streams_service.py | 32 +++ .../unit/gapic/visionai_v1/test_warehouse.py | 104 ++++++++ .../visionai_v1alpha1/test_app_platform.py | 32 +++ .../test_live_video_analytics.py | 8 + .../visionai_v1alpha1/test_streams_service.py | 32 +++ .../gapic/visionai_v1alpha1/test_warehouse.py | 48 ++++ packages/google-cloud-vm-migration/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/vmmigration_v1/test_vm_migration.py | 104 ++++++++ packages/google-cloud-vmwareengine/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../vmwareengine_v1/test_vmware_engine.py | 136 ++++++++++ packages/google-cloud-vpc-access/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../vpcaccess_v1/test_vpc_access_service.py | 8 + packages/google-cloud-webrisk/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_web_security_scanner.py | 32 +++ .../test_web_security_scanner.py | 32 +++ .../test_web_security_scanner.py | 32 +++ packages/google-cloud-workflows/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../gapic/executions_v1/test_executions.py | 5 + .../executions_v1beta/test_executions.py | 5 + .../unit/gapic/workflows_v1/test_workflows.py | 16 ++ .../gapic/workflows_v1beta/test_workflows.py | 8 + .../google-cloud-workloadmanager/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_workload_manager.py | 32 +++ packages/google-cloud-workstations/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../workstations_v1/test_workstations.py | 40 +++ .../workstations_v1beta/test_workstations.py | 40 +++ .../google-developer-knowledge/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_developer_knowledge.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../health_v4/test_data_points_service.py | 24 ++ .../test_data_subscription_service.py | 16 ++ .../health_v4/test_health_profile_service.py | 8 + packages/google-geo-type/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../google-maps-addressvalidation/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + packages/google-maps-areainsights/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_delivery_service.py | 16 ++ packages/google-maps-fleetengine/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../gapic/fleetengine_v1/test_trip_service.py | 5 + .../fleetengine_v1/test_vehicle_service.py | 5 + packages/google-maps-geocode/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + packages/google-maps-mapmanagement/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_map_management.py | 24 ++ .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_maps_platform_datasets.py | 16 ++ packages/google-maps-navconnect/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-maps-places/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../google-maps-routeoptimization/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-maps-routing/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + packages/google-maps-solar/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/google-shopping-css/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../css_v1/test_account_labels_service.py | 8 + .../gapic/css_v1/test_accounts_service.py | 8 + .../gapic/css_v1/test_css_products_service.py | 8 + .../unit/gapic/css_v1/test_quota_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_account_issue_service.py | 8 + .../test_account_relationships_service.py | 8 + .../test_account_services_service.py | 8 + .../test_accounts_service.py | 16 ++ .../test_gbp_accounts_service.py | 8 + .../test_lfp_providers_service.py | 8 + .../test_omnichannel_settings_service.py | 8 + .../test_online_return_policy_service.py | 8 + .../test_programs_service.py | 8 + .../test_regions_service.py | 8 + .../merchant_accounts_v1/test_user_service.py | 8 + .../test_account_issue_service.py | 8 + .../test_account_tax_service.py | 8 + .../test_accounts_service.py | 16 ++ .../test_gbp_accounts_service.py | 8 + .../test_lfp_providers_service.py | 8 + .../test_omnichannel_settings_service.py | 8 + .../test_online_return_policy_service.py | 8 + .../test_programs_service.py | 8 + .../test_regions_service.py | 8 + .../test_user_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_conversion_sources_service.py | 8 + .../test_conversion_sources_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_data_sources_service.py | 8 + .../test_data_sources_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_local_inventory_service.py | 8 + .../test_regional_inventory_service.py | 8 + .../test_local_inventory_service.py | 8 + .../test_regional_inventory_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + ...test_aggregate_product_statuses_service.py | 8 + ...test_aggregate_product_statuses_service.py | 8 + .../google-shopping-merchant-lfp/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../merchant_lfp_v1/test_lfp_store_service.py | 8 + .../test_lfp_store_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_notifications_api_service.py | 8 + .../test_notifications_api_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_products_service.py | 8 + .../test_products_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_promotions_service.py | 8 + .../test_promotions_service.py | 8 + .../google-shopping-merchant-quota/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + .../test_account_limits_service.py | 8 + .../merchant_quota_v1/test_quota_service.py | 8 + .../test_quota_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_report_service.py | 8 + .../test_report_service.py | 8 + .../test_report_service.py | 8 + .../noxfile.py | 19 +- .../testing/constraints-3.15.txt | 13 + .../test_merchant_reviews_service.py | 8 + .../test_product_reviews_service.py | 8 + packages/google-shopping-type/noxfile.py | 19 +- .../testing/constraints-3.15.txt | 12 + packages/grafeas/noxfile.py | 19 +- packages/grafeas/testing/constraints-3.15.txt | 12 + .../unit/gapic/grafeas_v1/test_grafeas.py | 24 ++ 1417 files changed, 20473 insertions(+), 1259 deletions(-) create mode 100644 packages/google-ads-admanager/testing/constraints-3.15.txt create mode 100644 packages/google-ads-datamanager/testing/constraints-3.15.txt create mode 100644 packages/google-ads-marketingplatform-admin/testing/constraints-3.15.txt create mode 100644 packages/google-ai-generativelanguage/testing/constraints-3.15.txt create mode 100644 packages/google-analytics-admin/testing/constraints-3.15.txt create mode 100644 packages/google-analytics-data/testing/constraints-3.15.txt create mode 100644 packages/google-apps-card/testing/constraints-3.15.txt create mode 100644 packages/google-apps-chat/testing/constraints-3.15.txt create mode 100644 packages/google-apps-events-subscriptions/testing/constraints-3.15.txt create mode 100644 packages/google-apps-meet/testing/constraints-3.15.txt create mode 100644 packages/google-apps-script-type/testing/constraints-3.15.txt create mode 100644 packages/google-area120-tables/testing/constraints-3.15.txt create mode 100644 packages/google-backstory/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-access-approval/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-advisorynotifications/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-agentidentitycredentials/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-agentregistry/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-alloydb-connectors/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-alloydb/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-api-gateway/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-api-keys/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-apigee-connect/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-apigee-registry/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-apihub/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-apiregistry/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-appengine-admin/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-appengine-logging/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-apphub/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-appoptimize/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-artifact-registry/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-asset/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-assured-workloads/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-auditmanager/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-automl/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-backupdr/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-bare-metal-solution/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-batch/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-beyondcorp-appconnections/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-beyondcorp-appconnectors/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-beyondcorp-appgateways/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-beyondcorp-clientconnectorservices/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-beyondcorp-clientgateways/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-biglake-hive/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-biglake/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-bigquery-analyticshub/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-bigquery-biglake/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-bigquery-connection/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-bigquery-data-exchange/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-bigquery-datapolicies/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-bigquery-datatransfer/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-bigquery-logging/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-bigquery-migration/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-bigquery-reservation/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-bigquery-storage/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-bigtable/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-billing-budgets/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-billing/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-binary-authorization/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-build/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-capacityplanner/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-certificate-manager/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-ces/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-channel/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-chronicle/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-cloudcontrolspartner/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-cloudsecuritycompliance/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-commerce-consumer-procurement/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-common/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-compute-v1beta/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-compute/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-confidentialcomputing/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-config/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-configdelivery/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-contact-center-insights/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-container/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-containeranalysis/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-contentwarehouse/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-data-fusion/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-data-qna/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-databasecenter/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-datacatalog-lineage-configmanagement/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-datacatalog-lineage/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-datacatalog/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-dataflow-client/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-dataform/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-datalabeling/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-dataplex/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-dataproc-metastore/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-dataproc/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-datastore/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-datastream/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-deploy/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-developerconnect/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-devicestreaming/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-dialogflow-cx/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-dialogflow/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-discoveryengine/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-dlp/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-dms/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-documentai/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-domains/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-edgecontainer/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-edgenetwork/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-enterpriseknowledgegraph/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-error-reporting/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-essential-contacts/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-eventarc-publishing/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-eventarc/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-filestore/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-financialservices/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-firestore/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-functions/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-gdchardwaremanagement/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-geminidataanalytics/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-gke-backup/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-gke-connect-gateway/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-gke-hub/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-gke-multicloud/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-gkerecommender/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-gsuiteaddons/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-hypercomputecluster/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-iam-logging/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-iam/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-iamconnectorcredentials/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-iap/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-ids/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-kms-inventory/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-kms/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-language/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-licensemanager/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-life-sciences/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-locationfinder/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-logging/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-lustre/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-maintenance-api/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-managed-identities/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-managedkafka-schemaregistry/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-managedkafka/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-media-translation/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-memcache/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-memorystore/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-migrationcenter/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-modelarmor/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-monitoring-dashboards/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-monitoring-metrics-scopes/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-monitoring/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-netapp/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-network-connectivity/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-network-management/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-network-security/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-network-services/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-notebooks/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-optimization/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-oracledatabase/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-orchestration-airflow/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-org-policy/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-os-config/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-os-login/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-parallelstore/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-parametermanager/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-phishing-protection/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-policy-troubleshooter/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-policysimulator/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-policytroubleshooter-iam/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-private-ca/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-private-catalog/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-privilegedaccessmanager/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-pubsub/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-quotas/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-rapidmigrationassessment/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-recaptcha-enterprise/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-recommendations-ai/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-recommender/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-redis-cluster/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-redis/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-resource-manager/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-retail/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-run/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-saasplatform-saasservicemgmt/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-scheduler/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-secret-manager/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-securesourcemanager/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-security-publicca/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-securitycenter/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-securitycentermanagement/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-service-control/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-service-directory/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-service-management/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-service-usage/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-servicehealth/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-shell/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-source-context/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-spanner/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-speech/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-storage-control/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-storage-transfer/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-storage/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-storagebatchoperations/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-storageinsights/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-support/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-talent/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-tasks/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-telcoautomation/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-texttospeech/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-tpu/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-trace/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-translate/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-vectorsearch/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-video-live-stream/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-video-stitcher/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-video-transcoder/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-videointelligence/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-vision/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-visionai/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-vm-migration/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-vmwareengine/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-vpc-access/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-webrisk/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-websecurityscanner/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-workflows/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-workloadmanager/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-workstations/testing/constraints-3.15.txt create mode 100644 packages/google-developer-knowledge/testing/constraints-3.15.txt create mode 100644 packages/google-devicesandservices-health/testing/constraints-3.15.txt create mode 100644 packages/google-geo-type/testing/constraints-3.15.txt create mode 100644 packages/google-maps-addressvalidation/testing/constraints-3.15.txt create mode 100644 packages/google-maps-areainsights/testing/constraints-3.15.txt create mode 100644 packages/google-maps-fleetengine-delivery/testing/constraints-3.15.txt create mode 100644 packages/google-maps-fleetengine/testing/constraints-3.15.txt create mode 100644 packages/google-maps-geocode/testing/constraints-3.15.txt create mode 100644 packages/google-maps-mapmanagement/testing/constraints-3.15.txt create mode 100644 packages/google-maps-mapsplatformdatasets/testing/constraints-3.15.txt create mode 100644 packages/google-maps-navconnect/testing/constraints-3.15.txt create mode 100644 packages/google-maps-places/testing/constraints-3.15.txt create mode 100644 packages/google-maps-routeoptimization/testing/constraints-3.15.txt create mode 100644 packages/google-maps-routing/testing/constraints-3.15.txt create mode 100644 packages/google-maps-solar/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-css/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-accounts/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-conversions/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-datasources/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-inventories/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-issueresolution/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-lfp/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-notifications/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-ordertracking/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-products/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-productstudio/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-promotions/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-quota/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-reports/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-merchant-reviews/testing/constraints-3.15.txt create mode 100644 packages/google-shopping-type/testing/constraints-3.15.txt create mode 100644 packages/grafeas/testing/constraints-3.15.txt diff --git a/packages/google-ads-admanager/noxfile.py b/packages/google-ads-admanager/noxfile.py index 266ed37fd871..74a214f8f993 100644 --- a/packages/google-ads-admanager/noxfile.py +++ b/packages/google-ads-admanager/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-ads-admanager/testing/constraints-3.15.txt b/packages/google-ads-admanager/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-ads-admanager/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_ad_break_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_ad_break_service.py index 56dfd1b96d2e..a137da2c91b4 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_ad_break_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_ad_break_service.py @@ -1607,6 +1607,9 @@ def test_list_ad_breaks_rest_pager(transport: str = "rest"): pager = client.list_ad_breaks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, ad_break_messages.AdBreak) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_ad_review_center_ad_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_ad_review_center_ad_service.py index 4a139a6f8686..22ade78c1f76 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_ad_review_center_ad_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_ad_review_center_ad_service.py @@ -1488,6 +1488,9 @@ def test_search_ad_review_center_ads_rest_pager(transport: str = "rest"): pager = client.search_ad_review_center_ads(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_ad_unit_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_ad_unit_service.py index b76d4a835c01..f3d78bf88576 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_ad_unit_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_ad_unit_service.py @@ -1595,6 +1595,9 @@ def test_list_ad_units_rest_pager(transport: str = "rest"): pager = client.list_ad_units(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, ad_unit_messages.AdUnit) for i in results) @@ -1859,6 +1862,9 @@ def test_list_ad_unit_sizes_rest_pager(transport: str = "rest"): pager = client.list_ad_unit_sizes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, ad_unit_messages.AdUnitSize) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_application_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_application_service.py index 47662c8b5fe6..7efcfcdc1a57 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_application_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_application_service.py @@ -1625,6 +1625,9 @@ def test_list_applications_rest_pager(transport: str = "rest"): pager = client.list_applications(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, application_messages.Application) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_audience_segment_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_audience_segment_service.py index 31fe68318366..ca4c5e25a62b 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_audience_segment_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_audience_segment_service.py @@ -1653,6 +1653,9 @@ def test_list_audience_segments_rest_pager(transport: str = "rest"): pager = client.list_audience_segments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_bandwidth_group_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_bandwidth_group_service.py index 32e9d64e8ec9..d7b7af6ac813 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_bandwidth_group_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_bandwidth_group_service.py @@ -1649,6 +1649,9 @@ def test_list_bandwidth_groups_rest_pager(transport: str = "rest"): pager = client.list_bandwidth_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_browser_language_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_browser_language_service.py index c975d4b3e6a8..2992fc80e5cd 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_browser_language_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_browser_language_service.py @@ -1653,6 +1653,9 @@ def test_list_browser_languages_rest_pager(transport: str = "rest"): pager = client.list_browser_languages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_browser_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_browser_service.py index f9e143c3a175..c7a6e8969da9 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_browser_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_browser_service.py @@ -1586,6 +1586,9 @@ def test_list_browsers_rest_pager(transport: str = "rest"): pager = client.list_browsers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, browser_messages.Browser) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_cms_metadata_key_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_cms_metadata_key_service.py index 842402776af5..401bf427d635 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_cms_metadata_key_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_cms_metadata_key_service.py @@ -1652,6 +1652,9 @@ def test_list_cms_metadata_keys_rest_pager(transport: str = "rest"): pager = client.list_cms_metadata_keys(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_cms_metadata_value_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_cms_metadata_value_service.py index 4c8b5ddedaee..19c1b713d3c3 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_cms_metadata_value_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_cms_metadata_value_service.py @@ -1655,6 +1655,9 @@ def test_list_cms_metadata_values_rest_pager(transport: str = "rest"): pager = client.list_cms_metadata_values(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_company_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_company_service.py index 22241c1fd551..b315ec54d5b2 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_company_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_company_service.py @@ -1592,6 +1592,9 @@ def test_list_companies_rest_pager(transport: str = "rest"): pager = client.list_companies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, company_messages.Company) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_contact_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_contact_service.py index 8d9985e4538d..0a6c3b621d56 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_contact_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_contact_service.py @@ -1591,6 +1591,9 @@ def test_list_contacts_rest_pager(transport: str = "rest"): pager = client.list_contacts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, contact_messages.Contact) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_content_bundle_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_content_bundle_service.py index 49ab4b75fdc0..82d10899e324 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_content_bundle_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_content_bundle_service.py @@ -1644,6 +1644,9 @@ def test_list_content_bundles_rest_pager(transport: str = "rest"): pager = client.list_content_bundles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_content_label_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_content_label_service.py index b203b730422e..c2c6b22a2781 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_content_label_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_content_label_service.py @@ -1636,6 +1636,9 @@ def test_list_content_labels_rest_pager(transport: str = "rest"): pager = client.list_content_labels(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, content_label_messages.ContentLabel) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_content_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_content_service.py index 49fefc2b9f6d..a5a7acfccb51 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_content_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_content_service.py @@ -1586,6 +1586,9 @@ def test_list_content_rest_pager(transport: str = "rest"): pager = client.list_content(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, content_messages.Content) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_creative_template_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_creative_template_service.py index b73a4e798d00..a0505768dc29 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_creative_template_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_creative_template_service.py @@ -1655,6 +1655,9 @@ def test_list_creative_templates_rest_pager(transport: str = "rest"): pager = client.list_creative_templates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_custom_field_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_custom_field_service.py index d9e3b3fadbbd..bc26ea9bd2a4 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_custom_field_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_custom_field_service.py @@ -1631,6 +1631,9 @@ def test_list_custom_fields_rest_pager(transport: str = "rest"): pager = client.list_custom_fields(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, custom_field_messages.CustomField) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_custom_targeting_key_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_custom_targeting_key_service.py index b4d9e59de311..5f4d4916dd15 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_custom_targeting_key_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_custom_targeting_key_service.py @@ -1671,6 +1671,9 @@ def test_list_custom_targeting_keys_rest_pager(transport: str = "rest"): pager = client.list_custom_targeting_keys(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_custom_targeting_value_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_custom_targeting_value_service.py index c08a6ec8128b..53a9c40ef95a 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_custom_targeting_value_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_custom_targeting_value_service.py @@ -1700,6 +1700,9 @@ def test_list_custom_targeting_values_rest_pager(transport: str = "rest"): pager = client.list_custom_targeting_values(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_device_capability_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_device_capability_service.py index 64bbbe3bf353..1e4423920fa1 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_device_capability_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_device_capability_service.py @@ -1654,6 +1654,9 @@ def test_list_device_capabilities_rest_pager(transport: str = "rest"): pager = client.list_device_capabilities(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_device_category_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_device_category_service.py index 20aeec26e673..9ddb651efc2a 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_device_category_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_device_category_service.py @@ -1649,6 +1649,9 @@ def test_list_device_categories_rest_pager(transport: str = "rest"): pager = client.list_device_categories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_device_manufacturer_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_device_manufacturer_service.py index 2f55b17885d3..baac016fb47a 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_device_manufacturer_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_device_manufacturer_service.py @@ -1669,6 +1669,9 @@ def test_list_device_manufacturers_rest_pager(transport: str = "rest"): pager = client.list_device_manufacturers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_entity_signals_mapping_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_entity_signals_mapping_service.py index 86e3835d1f06..afb16897a074 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_entity_signals_mapping_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_entity_signals_mapping_service.py @@ -1700,6 +1700,9 @@ def test_list_entity_signals_mappings_rest_pager(transport: str = "rest"): pager = client.list_entity_signals_mappings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_geo_target_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_geo_target_service.py index dd0811d28e47..54ecf92d56ae 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_geo_target_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_geo_target_service.py @@ -1608,6 +1608,9 @@ def test_list_geo_targets_rest_pager(transport: str = "rest"): pager = client.list_geo_targets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, geo_target_messages.GeoTarget) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_label_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_label_service.py index e06255c8a379..d043fe27490f 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_label_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_label_service.py @@ -1564,6 +1564,9 @@ def test_list_labels_rest_pager(transport: str = "rest"): pager = client.list_labels(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, label_messages.Label) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_line_item_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_line_item_service.py index 7dc94df1c689..140854df5649 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_line_item_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_line_item_service.py @@ -1608,6 +1608,9 @@ def test_list_line_items_rest_pager(transport: str = "rest"): pager = client.list_line_items(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, line_item_messages.LineItem) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_linked_device_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_linked_device_service.py index dfe3de2309f7..b16a01fd21a4 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_linked_device_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_linked_device_service.py @@ -1640,6 +1640,9 @@ def test_list_linked_devices_rest_pager(transport: str = "rest"): pager = client.list_linked_devices(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, linked_device_messages.LinkedDevice) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mcm_earnings_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mcm_earnings_service.py index c70b9f498d75..6ec036485df4 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mcm_earnings_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mcm_earnings_service.py @@ -1457,6 +1457,9 @@ def test_fetch_mcm_earnings_rest_pager(transport: str = "rest"): pager = client.fetch_mcm_earnings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mcm_earnings_messages.McmEarnings) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mobile_carrier_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mobile_carrier_service.py index f54546e86714..88e29a1c719d 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mobile_carrier_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mobile_carrier_service.py @@ -1644,6 +1644,9 @@ def test_list_mobile_carriers_rest_pager(transport: str = "rest"): pager = client.list_mobile_carriers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mobile_device_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mobile_device_service.py index d0aad9550318..7a07ed9bf9a3 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mobile_device_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mobile_device_service.py @@ -1636,6 +1636,9 @@ def test_list_mobile_devices_rest_pager(transport: str = "rest"): pager = client.list_mobile_devices(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mobile_device_messages.MobileDevice) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mobile_device_submodel_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mobile_device_submodel_service.py index 2889bd5ccbef..56cf2cc46d22 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mobile_device_submodel_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_mobile_device_submodel_service.py @@ -1699,6 +1699,9 @@ def test_list_mobile_device_submodels_rest_pager(transport: str = "rest"): pager = client.list_mobile_device_submodels(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_network_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_network_service.py index 4b0231281da4..f4af8d067595 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_network_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_network_service.py @@ -1425,6 +1425,9 @@ def test_list_networks_rest_pager(transport: str = "rest"): pager = client.list_networks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, network_messages.Network) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_operating_system_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_operating_system_service.py index 86a9bbaf04dc..02279305565c 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_operating_system_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_operating_system_service.py @@ -1653,6 +1653,9 @@ def test_list_operating_systems_rest_pager(transport: str = "rest"): pager = client.list_operating_systems(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_operating_system_version_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_operating_system_version_service.py index f8a7f6a3ecc4..cb8819297916 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_operating_system_version_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_operating_system_version_service.py @@ -1722,6 +1722,9 @@ def test_list_operating_system_versions_rest_pager(transport: str = "rest"): pager = client.list_operating_system_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_order_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_order_service.py index de7510fa0de8..e0449323c2d8 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_order_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_order_service.py @@ -1570,6 +1570,9 @@ def test_list_orders_rest_pager(transport: str = "rest"): pager = client.list_orders(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, order_messages.Order) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_placement_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_placement_service.py index 6c0c6660ea2f..bca2d4ad928b 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_placement_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_placement_service.py @@ -1612,6 +1612,9 @@ def test_list_placements_rest_pager(transport: str = "rest"): pager = client.list_placements(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, placement_messages.Placement) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_private_auction_deal_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_private_auction_deal_service.py index efcb88540670..a0e3caa8585e 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_private_auction_deal_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_private_auction_deal_service.py @@ -1680,6 +1680,9 @@ def test_list_private_auction_deals_rest_pager(transport: str = "rest"): pager = client.list_private_auction_deals(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_private_auction_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_private_auction_service.py index 0f9f5486cc80..782ec48174b2 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_private_auction_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_private_auction_service.py @@ -1651,6 +1651,9 @@ def test_list_private_auctions_rest_pager(transport: str = "rest"): pager = client.list_private_auctions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_programmatic_buyer_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_programmatic_buyer_service.py index 1befafc29407..2596d02af63e 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_programmatic_buyer_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_programmatic_buyer_service.py @@ -1660,6 +1660,9 @@ def test_list_programmatic_buyers_rest_pager(transport: str = "rest"): pager = client.list_programmatic_buyers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_report_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_report_service.py index 8b54208cec8b..235e0e2be912 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_report_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_report_service.py @@ -1594,6 +1594,9 @@ def test_list_reports_rest_pager(transport: str = "rest"): pager = client.list_reports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, report_messages.Report) for i in results) @@ -2293,6 +2296,9 @@ def test_fetch_report_result_rows_rest_pager(transport: str = "rest"): pager = client.fetch_report_result_rows(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, report_messages.ReportDataTable.Row) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_rich_media_ads_company_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_rich_media_ads_company_service.py index 30347f3777f7..a8f41dd7bc94 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_rich_media_ads_company_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_rich_media_ads_company_service.py @@ -1690,6 +1690,9 @@ def test_list_rich_media_ads_companies_rest_pager(transport: str = "rest"): pager = client.list_rich_media_ads_companies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_role_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_role_service.py index e0b2c1004217..a8e16afd498a 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_role_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_role_service.py @@ -1558,6 +1558,9 @@ def test_list_roles_rest_pager(transport: str = "rest"): pager = client.list_roles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, role_messages.Role) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_site_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_site_service.py index 642252e37012..a659294dc5e1 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_site_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_site_service.py @@ -1560,6 +1560,9 @@ def test_list_sites_rest_pager(transport: str = "rest"): pager = client.list_sites(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, site_messages.Site) for i in results) diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_taxonomy_category_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_taxonomy_category_service.py index d27c10ef4126..8a36884c1983 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_taxonomy_category_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_taxonomy_category_service.py @@ -1655,6 +1655,9 @@ def test_list_taxonomy_categories_rest_pager(transport: str = "rest"): pager = client.list_taxonomy_categories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_team_service.py b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_team_service.py index 6d8024b332ee..22d87482c4e9 100644 --- a/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_team_service.py +++ b/packages/google-ads-admanager/tests/unit/gapic/admanager_v1/test_team_service.py @@ -1559,6 +1559,9 @@ def test_list_teams_rest_pager(transport: str = "rest"): pager = client.list_teams(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, team_messages.Team) for i in results) diff --git a/packages/google-ads-datamanager/noxfile.py b/packages/google-ads-datamanager/noxfile.py index f2936e9406bd..9161a988d351 100644 --- a/packages/google-ads-datamanager/noxfile.py +++ b/packages/google-ads-datamanager/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-ads-datamanager/testing/constraints-3.15.txt b/packages/google-ads-datamanager/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-ads-datamanager/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_partner_link_service.py b/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_partner_link_service.py index aae69c55e38b..d30ec2431d36 100644 --- a/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_partner_link_service.py +++ b/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_partner_link_service.py @@ -2463,6 +2463,9 @@ def test_search_partner_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, partner_link_service.PartnerLink) for i in results) @@ -2555,6 +2558,8 @@ async def test_search_partner_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3237,6 +3242,9 @@ def test_search_partner_links_rest_pager(transport: str = "rest"): pager = client.search_partner_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, partner_link_service.PartnerLink) for i in results) diff --git a/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_user_list_direct_license_service.py b/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_user_list_direct_license_service.py index 4285b0b8dd7d..45c579bbd2b4 100644 --- a/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_user_list_direct_license_service.py +++ b/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_user_list_direct_license_service.py @@ -3033,6 +3033,9 @@ def test_list_user_list_direct_licenses_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3128,6 +3131,8 @@ async def test_list_user_list_direct_licenses_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4045,6 +4050,9 @@ def test_list_user_list_direct_licenses_rest_pager(transport: str = "rest"): pager = client.list_user_list_direct_licenses(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_user_list_global_license_service.py b/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_user_list_global_license_service.py index 23c015bde7f8..de723f70903b 100644 --- a/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_user_list_global_license_service.py +++ b/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_user_list_global_license_service.py @@ -3009,6 +3009,9 @@ def test_list_user_list_global_licenses_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3104,6 +3107,8 @@ async def test_list_user_list_global_licenses_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3576,6 +3581,9 @@ def test_list_user_list_global_license_customer_infos_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3675,6 +3683,8 @@ async def test_list_user_list_global_license_customer_infos_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4592,6 +4602,9 @@ def test_list_user_list_global_licenses_rest_pager(transport: str = "rest"): pager = client.list_user_list_global_licenses(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4883,6 +4896,9 @@ def test_list_user_list_global_license_customer_infos_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_user_list_service.py b/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_user_list_service.py index 8eab51847559..b78c470db2a4 100644 --- a/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_user_list_service.py +++ b/packages/google-ads-datamanager/tests/unit/gapic/datamanager_v1/test_user_list_service.py @@ -2083,6 +2083,9 @@ def test_list_user_lists_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, user_list.UserList) for i in results) @@ -2171,6 +2174,8 @@ async def test_list_user_lists_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3707,6 +3712,9 @@ def test_list_user_lists_rest_pager(transport: str = "rest"): pager = client.list_user_lists(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, user_list.UserList) for i in results) diff --git a/packages/google-ads-marketingplatform-admin/noxfile.py b/packages/google-ads-marketingplatform-admin/noxfile.py index 6671718f045c..c01b33dcf844 100644 --- a/packages/google-ads-marketingplatform-admin/noxfile.py +++ b/packages/google-ads-marketingplatform-admin/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-ads-marketingplatform-admin/testing/constraints-3.15.txt b/packages/google-ads-marketingplatform-admin/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-ads-marketingplatform-admin/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-ads-marketingplatform-admin/tests/unit/gapic/marketingplatform_admin_v1alpha/test_marketingplatform_admin_service.py b/packages/google-ads-marketingplatform-admin/tests/unit/gapic/marketingplatform_admin_v1alpha/test_marketingplatform_admin_service.py index 1424f85162c9..cb40f10ff422 100644 --- a/packages/google-ads-marketingplatform-admin/tests/unit/gapic/marketingplatform_admin_v1alpha/test_marketingplatform_admin_service.py +++ b/packages/google-ads-marketingplatform-admin/tests/unit/gapic/marketingplatform_admin_v1alpha/test_marketingplatform_admin_service.py @@ -2016,6 +2016,9 @@ def test_list_organizations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Organization) for i in results) @@ -2108,6 +2111,8 @@ async def test_list_organizations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2824,6 +2829,9 @@ def test_list_analytics_account_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.AnalyticsAccountLink) for i in results) @@ -2916,6 +2924,8 @@ async def test_list_analytics_account_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4634,6 +4644,9 @@ def test_list_organizations_rest_pager(transport: str = "rest"): pager = client.list_organizations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Organization) for i in results) @@ -5032,6 +5045,9 @@ def test_list_analytics_account_links_rest_pager(transport: str = "rest"): pager = client.list_analytics_account_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.AnalyticsAccountLink) for i in results) diff --git a/packages/google-ai-generativelanguage/noxfile.py b/packages/google-ai-generativelanguage/noxfile.py index 770a51d82198..5059cae6f144 100644 --- a/packages/google-ai-generativelanguage/noxfile.py +++ b/packages/google-ai-generativelanguage/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-ai-generativelanguage/testing/constraints-3.15.txt b/packages/google-ai-generativelanguage/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-ai-generativelanguage/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1/test_model_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1/test_model_service.py index 2f19a9cd99e8..7d01593ee3c3 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1/test_model_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1/test_model_service.py @@ -1990,6 +1990,9 @@ def test_list_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -2078,6 +2081,8 @@ async def test_list_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2449,6 +2454,9 @@ def test_list_models_rest_pager(transport: str = "rest"): pager = client.list_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_cache_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_cache_service.py index 785260f6c6eb..2e342ce553fd 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_cache_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_cache_service.py @@ -1553,6 +1553,9 @@ def test_list_cached_contents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cached_content.CachedContent) for i in results) @@ -1645,6 +1648,8 @@ async def test_list_cached_contents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3144,6 +3149,9 @@ def test_list_cached_contents_rest_pager(transport: str = "rest"): pager = client.list_cached_contents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cached_content.CachedContent) for i in results) diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_file_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_file_service.py index f6e03876a39d..1f43680eea45 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_file_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_file_service.py @@ -1686,6 +1686,9 @@ def test_list_files_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, file.File) for i in results) @@ -1774,6 +1777,8 @@ async def test_list_files_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2605,6 +2610,9 @@ def test_list_files_rest_pager(transport: str = "rest"): pager = client.list_files(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, file.File) for i in results) diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_model_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_model_service.py index b523c58dcb4a..eefaceefcf71 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_model_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_model_service.py @@ -1993,6 +1993,9 @@ def test_list_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -2081,6 +2084,8 @@ async def test_list_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2822,6 +2827,9 @@ def test_list_tuned_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tuned_model.TunedModel) for i in results) @@ -2914,6 +2922,8 @@ async def test_list_tuned_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4335,6 +4345,9 @@ def test_list_models_rest_pager(transport: str = "rest"): pager = client.list_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -4670,6 +4683,9 @@ def test_list_tuned_models_rest_pager(transport: str = "rest"): pager = client.list_tuned_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tuned_model.TunedModel) for i in results) diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_permission_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_permission_service.py index 678046ac12fd..3f56fe9aa24b 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_permission_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_permission_service.py @@ -2439,6 +2439,9 @@ def test_list_permissions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, permission.Permission) for i in results) @@ -2527,6 +2530,8 @@ async def test_list_permissions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4133,6 +4138,9 @@ def test_list_permissions_rest_pager(transport: str = "rest"): pager = client.list_permissions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, permission.Permission) for i in results) diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_retriever_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_retriever_service.py index 7b9c3891acbe..c8151c57304a 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_retriever_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1alpha/test_retriever_service.py @@ -2808,6 +2808,9 @@ def test_list_corpora_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, retriever.Corpus) for i in results) @@ -2896,6 +2899,8 @@ async def test_list_corpora_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4862,6 +4867,9 @@ def test_list_documents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, retriever.Document) for i in results) @@ -4950,6 +4958,8 @@ async def test_list_documents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7660,6 +7670,9 @@ def test_list_chunks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, retriever.Chunk) for i in results) @@ -7748,6 +7761,8 @@ async def test_list_chunks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8596,6 +8611,9 @@ def test_list_corpora_rest_pager(transport: str = "rest"): pager = client.list_corpora(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, retriever.Corpus) for i in results) @@ -9704,6 +9722,9 @@ def test_list_documents_rest_pager(transport: str = "rest"): pager = client.list_documents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, retriever.Document) for i in results) @@ -11172,6 +11193,9 @@ def test_list_chunks_rest_pager(transport: str = "rest"): pager = client.list_chunks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, retriever.Chunk) for i in results) diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_cache_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_cache_service.py index 55477c83dd19..8b782b3e4e0f 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_cache_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_cache_service.py @@ -1555,6 +1555,9 @@ def test_list_cached_contents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cached_content.CachedContent) for i in results) @@ -1647,6 +1650,8 @@ async def test_list_cached_contents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3146,6 +3151,9 @@ def test_list_cached_contents_rest_pager(transport: str = "rest"): pager = client.list_cached_contents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cached_content.CachedContent) for i in results) diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_file_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_file_service.py index 3347b5c36e53..6b679c0d9c88 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_file_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_file_service.py @@ -1686,6 +1686,9 @@ def test_list_files_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, file.File) for i in results) @@ -1774,6 +1777,8 @@ async def test_list_files_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2931,6 +2936,9 @@ def test_list_files_rest_pager(transport: str = "rest"): pager = client.list_files(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, file.File) for i in results) diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_model_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_model_service.py index ba95b7aef787..c27b91738e6e 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_model_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_model_service.py @@ -1997,6 +1997,9 @@ def test_list_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -2085,6 +2088,8 @@ async def test_list_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2826,6 +2831,9 @@ def test_list_tuned_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tuned_model.TunedModel) for i in results) @@ -2918,6 +2926,8 @@ async def test_list_tuned_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4339,6 +4349,9 @@ def test_list_models_rest_pager(transport: str = "rest"): pager = client.list_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -4674,6 +4687,9 @@ def test_list_tuned_models_rest_pager(transport: str = "rest"): pager = client.list_tuned_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tuned_model.TunedModel) for i in results) diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_permission_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_permission_service.py index 9c08da18ed60..5a752f3de6c1 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_permission_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_permission_service.py @@ -2439,6 +2439,9 @@ def test_list_permissions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, permission.Permission) for i in results) @@ -2527,6 +2530,8 @@ async def test_list_permissions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4133,6 +4138,9 @@ def test_list_permissions_rest_pager(transport: str = "rest"): pager = client.list_permissions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, permission.Permission) for i in results) diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_retriever_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_retriever_service.py index cdb40dee7b3e..9d676e1d9ea2 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_retriever_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta/test_retriever_service.py @@ -2808,6 +2808,9 @@ def test_list_corpora_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, retriever.Corpus) for i in results) @@ -2896,6 +2899,8 @@ async def test_list_corpora_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4862,6 +4867,9 @@ def test_list_documents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, retriever.Document) for i in results) @@ -4950,6 +4958,8 @@ async def test_list_documents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7660,6 +7670,9 @@ def test_list_chunks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, retriever.Chunk) for i in results) @@ -7748,6 +7761,8 @@ async def test_list_chunks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8596,6 +8611,9 @@ def test_list_corpora_rest_pager(transport: str = "rest"): pager = client.list_corpora(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, retriever.Corpus) for i in results) @@ -9704,6 +9722,9 @@ def test_list_documents_rest_pager(transport: str = "rest"): pager = client.list_documents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, retriever.Document) for i in results) @@ -11172,6 +11193,9 @@ def test_list_chunks_rest_pager(transport: str = "rest"): pager = client.list_chunks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, retriever.Chunk) for i in results) diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta2/test_model_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta2/test_model_service.py index 35de6565b140..cd547ed04331 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta2/test_model_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta2/test_model_service.py @@ -1981,6 +1981,9 @@ def test_list_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -2069,6 +2072,8 @@ async def test_list_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2442,6 +2447,9 @@ def test_list_models_rest_pager(transport: str = "rest"): pager = client.list_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta3/test_model_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta3/test_model_service.py index fd94e503493a..8f77cfb115fc 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta3/test_model_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta3/test_model_service.py @@ -1989,6 +1989,9 @@ def test_list_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -2077,6 +2080,8 @@ async def test_list_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2812,6 +2817,9 @@ def test_list_tuned_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tuned_model.TunedModel) for i in results) @@ -2904,6 +2912,8 @@ async def test_list_tuned_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4321,6 +4331,9 @@ def test_list_models_rest_pager(transport: str = "rest"): pager = client.list_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -4656,6 +4669,9 @@ def test_list_tuned_models_rest_pager(transport: str = "rest"): pager = client.list_tuned_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tuned_model.TunedModel) for i in results) diff --git a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta3/test_permission_service.py b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta3/test_permission_service.py index 295f3996a482..e6f438ddac03 100644 --- a/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta3/test_permission_service.py +++ b/packages/google-ai-generativelanguage/tests/unit/gapic/generativelanguage_v1beta3/test_permission_service.py @@ -2439,6 +2439,9 @@ def test_list_permissions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, permission.Permission) for i in results) @@ -2527,6 +2530,8 @@ async def test_list_permissions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4133,6 +4138,9 @@ def test_list_permissions_rest_pager(transport: str = "rest"): pager = client.list_permissions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, permission.Permission) for i in results) diff --git a/packages/google-analytics-admin/noxfile.py b/packages/google-analytics-admin/noxfile.py index c1cb27ce5fce..0026ac1c700e 100644 --- a/packages/google-analytics-admin/noxfile.py +++ b/packages/google-analytics-admin/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-analytics-admin/testing/constraints-3.15.txt b/packages/google-analytics-admin/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-analytics-admin/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-analytics-admin/tests/unit/gapic/admin_v1alpha/test_analytics_admin_service.py b/packages/google-analytics-admin/tests/unit/gapic/admin_v1alpha/test_analytics_admin_service.py index d2e8861de9b1..1693679c0a76 100644 --- a/packages/google-analytics-admin/tests/unit/gapic/admin_v1alpha/test_analytics_admin_service.py +++ b/packages/google-analytics-admin/tests/unit/gapic/admin_v1alpha/test_analytics_admin_service.py @@ -1975,6 +1975,9 @@ def test_list_accounts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Account) for i in results) @@ -2063,6 +2066,8 @@ async def test_list_accounts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3206,6 +3211,9 @@ def test_list_account_summaries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.AccountSummary) for i in results) @@ -3298,6 +3306,8 @@ async def test_list_account_summaries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3934,6 +3944,9 @@ def test_list_properties_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Property) for i in results) @@ -4022,6 +4035,8 @@ async def test_list_properties_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6159,6 +6174,9 @@ def test_list_firebase_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.FirebaseLink) for i in results) @@ -6251,6 +6269,8 @@ async def test_list_firebase_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8113,6 +8133,9 @@ def test_list_google_ads_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.GoogleAdsLink) for i in results) @@ -8205,6 +8228,8 @@ async def test_list_google_ads_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9378,6 +9403,9 @@ def test_list_measurement_protocol_secrets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.MeasurementProtocolSecret) for i in results) @@ -9470,6 +9498,8 @@ async def test_list_measurement_protocol_secrets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12687,6 +12717,9 @@ def test_list_sk_ad_network_conversion_value_schemas_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -12785,6 +12818,8 @@ async def test_list_sk_ad_network_conversion_value_schemas_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13160,6 +13195,9 @@ def test_search_change_history_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ChangeHistoryEvent) for i in results) @@ -13252,6 +13290,8 @@ async def test_search_change_history_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15880,6 +15920,9 @@ def test_list_conversion_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ConversionEvent) for i in results) @@ -15972,6 +16015,8 @@ async def test_list_conversion_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17744,6 +17789,9 @@ def test_list_key_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.KeyEvent) for i in results) @@ -17832,6 +17880,8 @@ async def test_list_key_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18638,6 +18688,9 @@ def test_list_display_video360_advertiser_links_pager(transport_name: str = "grp assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -18732,6 +18785,8 @@ async def test_list_display_video360_advertiser_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20643,6 +20698,9 @@ def test_list_display_video360_advertiser_link_proposals_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -20743,6 +20801,8 @@ async def test_list_display_video360_advertiser_link_proposals_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -23235,6 +23295,9 @@ def test_list_custom_dimensions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CustomDimension) for i in results) @@ -23327,6 +23390,8 @@ async def test_list_custom_dimensions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -25242,6 +25307,9 @@ def test_list_custom_metrics_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CustomMetric) for i in results) @@ -25334,6 +25402,8 @@ async def test_list_custom_metrics_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -28325,6 +28395,9 @@ def test_list_data_streams_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.DataStream) for i in results) @@ -28417,6 +28490,8 @@ async def test_list_data_streams_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -29525,6 +29600,9 @@ def test_list_audiences_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, audience.Audience) for i in results) @@ -29613,6 +29691,8 @@ async def test_list_audiences_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -31369,6 +31449,9 @@ def test_list_search_ads360_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SearchAds360Link) for i in results) @@ -31461,6 +31544,8 @@ async def test_list_search_ads360_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -35386,6 +35471,9 @@ def test_list_access_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.AccessBinding) for i in results) @@ -35478,6 +35566,8 @@ async def test_list_access_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -37300,6 +37390,9 @@ def test_list_expanded_data_sets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, expanded_data_set.ExpandedDataSet) for i in results) @@ -37392,6 +37485,8 @@ async def test_list_expanded_data_sets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -39269,6 +39364,9 @@ def test_list_channel_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, channel_group.ChannelGroup) for i in results) @@ -39361,6 +39459,8 @@ async def test_list_channel_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -41642,6 +41742,9 @@ def test_list_big_query_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.BigQueryLink) for i in results) @@ -41734,6 +41837,8 @@ async def test_list_big_query_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -44718,6 +44823,9 @@ def test_list_ad_sense_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.AdSenseLink) for i in results) @@ -44810,6 +44918,8 @@ async def test_list_ad_sense_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -45616,6 +45726,9 @@ def test_list_event_create_rules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -45710,6 +45823,8 @@ async def test_list_event_create_rules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -47570,6 +47685,9 @@ def test_list_event_edit_rules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, event_create_and_edit.EventEditRule) for i in results) @@ -47662,6 +47780,8 @@ async def test_list_event_edit_rules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -50925,6 +51045,9 @@ def test_list_calculated_metrics_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CalculatedMetric) for i in results) @@ -51017,6 +51140,8 @@ async def test_list_calculated_metrics_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -52725,6 +52850,9 @@ def test_list_rollup_property_source_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.RollupPropertySourceLink) for i in results) @@ -52817,6 +52945,8 @@ async def test_list_rollup_property_source_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -54878,6 +55008,9 @@ def test_list_subproperty_event_filters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -54973,6 +55106,8 @@ async def test_list_subproperty_event_filters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -56879,6 +57014,9 @@ def test_list_reporting_data_annotations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ReportingDataAnnotation) for i in results) @@ -56971,6 +57109,8 @@ async def test_list_reporting_data_annotations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -58486,6 +58626,9 @@ def test_list_subproperty_sync_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SubpropertySyncConfig) for i in results) @@ -58578,6 +58721,8 @@ async def test_list_subproperty_sync_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -60702,6 +60847,9 @@ def test_list_accounts_rest_pager(transport: str = "rest"): pager = client.list_accounts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Account) for i in results) @@ -61202,6 +61350,9 @@ def test_list_account_summaries_rest_pager(transport: str = "rest"): pager = client.list_account_summaries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.AccountSummary) for i in results) @@ -61589,6 +61740,9 @@ def test_list_properties_rest_pager(transport: str = "rest"): pager = client.list_properties(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Property) for i in results) @@ -62748,6 +62902,9 @@ def test_list_firebase_links_rest_pager(transport: str = "rest"): pager = client.list_firebase_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.FirebaseLink) for i in results) @@ -63747,6 +63904,9 @@ def test_list_google_ads_links_rest_pager(transport: str = "rest"): pager = client.list_google_ads_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.GoogleAdsLink) for i in results) @@ -64386,6 +64546,9 @@ def test_list_measurement_protocol_secrets_rest_pager(transport: str = "rest"): pager = client.list_measurement_protocol_secrets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.MeasurementProtocolSecret) for i in results) @@ -66195,6 +66358,9 @@ def test_list_sk_ad_network_conversion_value_schemas_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -66393,6 +66559,9 @@ def test_search_change_history_events_rest_pager(transport: str = "rest"): pager = client.search_change_history_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ChangeHistoryEvent) for i in results) @@ -67781,6 +67950,9 @@ def test_list_conversion_events_rest_pager(transport: str = "rest"): pager = client.list_conversion_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ConversionEvent) for i in results) @@ -68765,6 +68937,9 @@ def test_list_key_events_rest_pager(transport: str = "rest"): pager = client.list_key_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.KeyEvent) for i in results) @@ -69230,6 +69405,9 @@ def test_list_display_video360_advertiser_links_rest_pager(transport: str = "res pager = client.list_display_video360_advertiser_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -70308,6 +70486,9 @@ def test_list_display_video360_advertiser_link_proposals_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -71623,6 +71804,9 @@ def test_list_custom_dimensions_rest_pager(transport: str = "rest"): pager = client.list_custom_dimensions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CustomDimension) for i in results) @@ -72619,6 +72803,9 @@ def test_list_custom_metrics_rest_pager(transport: str = "rest"): pager = client.list_custom_metrics(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CustomMetric) for i in results) @@ -74182,6 +74369,9 @@ def test_list_data_streams_rest_pager(transport: str = "rest"): pager = client.list_data_streams(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.DataStream) for i in results) @@ -74791,6 +74981,9 @@ def test_list_audiences_rest_pager(transport: str = "rest"): pager = client.list_audiences(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, audience.Audience) for i in results) @@ -75731,6 +75924,9 @@ def test_list_search_ads360_links_rest_pager(transport: str = "rest"): pager = client.list_search_ads360_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SearchAds360Link) for i in results) @@ -77695,6 +77891,9 @@ def test_list_access_bindings_rest_pager(transport: str = "rest"): pager = client.list_access_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.AccessBinding) for i in results) @@ -78692,6 +78891,9 @@ def test_list_expanded_data_sets_rest_pager(transport: str = "rest"): pager = client.list_expanded_data_sets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, expanded_data_set.ExpandedDataSet) for i in results) @@ -79695,6 +79897,9 @@ def test_list_channel_groups_rest_pager(transport: str = "rest"): pager = client.list_channel_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, channel_group.ChannelGroup) for i in results) @@ -80888,6 +81093,9 @@ def test_list_big_query_links_rest_pager(transport: str = "rest"): pager = client.list_big_query_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.BigQueryLink) for i in results) @@ -82456,6 +82664,9 @@ def test_list_ad_sense_links_rest_pager(transport: str = "rest"): pager = client.list_ad_sense_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.AdSenseLink) for i in results) @@ -82902,6 +83113,9 @@ def test_list_event_create_rules_rest_pager(transport: str = "rest"): pager = client.list_event_create_rules(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -83918,6 +84132,9 @@ def test_list_event_edit_rules_rest_pager(transport: str = "rest"): pager = client.list_event_edit_rules(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, event_create_and_edit.EventEditRule) for i in results) @@ -85664,6 +85881,9 @@ def test_list_calculated_metrics_rest_pager(transport: str = "rest"): pager = client.list_calculated_metrics(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CalculatedMetric) for i in results) @@ -86615,6 +86835,9 @@ def test_list_rollup_property_source_links_rest_pager(transport: str = "rest"): pager = client.list_rollup_property_source_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.RollupPropertySourceLink) for i in results) @@ -87781,6 +88004,9 @@ def test_list_subproperty_event_filters_rest_pager(transport: str = "rest"): pager = client.list_subproperty_event_filters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -88826,6 +89052,9 @@ def test_list_reporting_data_annotations_rest_pager(transport: str = "rest"): pager = client.list_reporting_data_annotations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ReportingDataAnnotation) for i in results) @@ -89654,6 +89883,9 @@ def test_list_subproperty_sync_configs_rest_pager(transport: str = "rest"): pager = client.list_subproperty_sync_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SubpropertySyncConfig) for i in results) diff --git a/packages/google-analytics-admin/tests/unit/gapic/admin_v1beta/test_analytics_admin_service.py b/packages/google-analytics-admin/tests/unit/gapic/admin_v1beta/test_analytics_admin_service.py index 3a37e4f02f0b..282789aace83 100644 --- a/packages/google-analytics-admin/tests/unit/gapic/admin_v1beta/test_analytics_admin_service.py +++ b/packages/google-analytics-admin/tests/unit/gapic/admin_v1beta/test_analytics_admin_service.py @@ -1958,6 +1958,9 @@ def test_list_accounts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Account) for i in results) @@ -2046,6 +2049,8 @@ async def test_list_accounts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3189,6 +3194,9 @@ def test_list_account_summaries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.AccountSummary) for i in results) @@ -3281,6 +3289,8 @@ async def test_list_account_summaries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3917,6 +3927,9 @@ def test_list_properties_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Property) for i in results) @@ -4005,6 +4018,8 @@ async def test_list_properties_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6142,6 +6157,9 @@ def test_list_firebase_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.FirebaseLink) for i in results) @@ -6234,6 +6252,8 @@ async def test_list_firebase_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7750,6 +7770,9 @@ def test_list_google_ads_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.GoogleAdsLink) for i in results) @@ -7842,6 +7865,8 @@ async def test_list_google_ads_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9015,6 +9040,9 @@ def test_list_measurement_protocol_secrets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.MeasurementProtocolSecret) for i in results) @@ -9107,6 +9135,8 @@ async def test_list_measurement_protocol_secrets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10808,6 +10838,9 @@ def test_search_change_history_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ChangeHistoryEvent) for i in results) @@ -10900,6 +10933,8 @@ async def test_search_change_history_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12804,6 +12839,9 @@ def test_list_conversion_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ConversionEvent) for i in results) @@ -12896,6 +12934,8 @@ async def test_list_conversion_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14668,6 +14708,9 @@ def test_list_key_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.KeyEvent) for i in results) @@ -14756,6 +14799,8 @@ async def test_list_key_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15953,6 +15998,9 @@ def test_list_custom_dimensions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CustomDimension) for i in results) @@ -16045,6 +16093,8 @@ async def test_list_custom_dimensions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17960,6 +18010,9 @@ def test_list_custom_metrics_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CustomMetric) for i in results) @@ -18052,6 +18105,8 @@ async def test_list_custom_metrics_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -21043,6 +21098,9 @@ def test_list_data_streams_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.DataStream) for i in results) @@ -21135,6 +21193,8 @@ async def test_list_data_streams_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -22044,6 +22104,9 @@ def test_list_accounts_rest_pager(transport: str = "rest"): pager = client.list_accounts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Account) for i in results) @@ -22544,6 +22607,9 @@ def test_list_account_summaries_rest_pager(transport: str = "rest"): pager = client.list_account_summaries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.AccountSummary) for i in results) @@ -22931,6 +22997,9 @@ def test_list_properties_rest_pager(transport: str = "rest"): pager = client.list_properties(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Property) for i in results) @@ -24090,6 +24159,9 @@ def test_list_firebase_links_rest_pager(transport: str = "rest"): pager = client.list_firebase_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.FirebaseLink) for i in results) @@ -24905,6 +24977,9 @@ def test_list_google_ads_links_rest_pager(transport: str = "rest"): pager = client.list_google_ads_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.GoogleAdsLink) for i in results) @@ -25544,6 +25619,9 @@ def test_list_measurement_protocol_secrets_rest_pager(transport: str = "rest"): pager = client.list_measurement_protocol_secrets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.MeasurementProtocolSecret) for i in results) @@ -26469,6 +26547,9 @@ def test_search_change_history_events_rest_pager(transport: str = "rest"): pager = client.search_change_history_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ChangeHistoryEvent) for i in results) @@ -27473,6 +27554,9 @@ def test_list_conversion_events_rest_pager(transport: str = "rest"): pager = client.list_conversion_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ConversionEvent) for i in results) @@ -28457,6 +28541,9 @@ def test_list_key_events_rest_pager(transport: str = "rest"): pager = client.list_key_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.KeyEvent) for i in results) @@ -29095,6 +29182,9 @@ def test_list_custom_dimensions_rest_pager(transport: str = "rest"): pager = client.list_custom_dimensions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CustomDimension) for i in results) @@ -30090,6 +30180,9 @@ def test_list_custom_metrics_rest_pager(transport: str = "rest"): pager = client.list_custom_metrics(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CustomMetric) for i in results) @@ -31653,6 +31746,9 @@ def test_list_data_streams_rest_pager(transport: str = "rest"): pager = client.list_data_streams(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.DataStream) for i in results) diff --git a/packages/google-analytics-data/noxfile.py b/packages/google-analytics-data/noxfile.py index 0fcdca3b449b..3a80b3fb9a46 100644 --- a/packages/google-analytics-data/noxfile.py +++ b/packages/google-analytics-data/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-analytics-data/testing/constraints-3.15.txt b/packages/google-analytics-data/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-analytics-data/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-analytics-data/tests/unit/gapic/data_v1alpha/test_alpha_analytics_data.py b/packages/google-analytics-data/tests/unit/gapic/data_v1alpha/test_alpha_analytics_data.py index 01bf8b72ab53..12907bf7fba8 100644 --- a/packages/google-analytics-data/tests/unit/gapic/data_v1alpha/test_alpha_analytics_data.py +++ b/packages/google-analytics-data/tests/unit/gapic/data_v1alpha/test_alpha_analytics_data.py @@ -3096,6 +3096,9 @@ def test_list_audience_lists_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, analytics_data_api.AudienceList) for i in results) @@ -3188,6 +3191,8 @@ async def test_list_audience_lists_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4383,6 +4388,9 @@ def test_list_recurring_audience_lists_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4477,6 +4485,8 @@ async def test_list_recurring_audience_lists_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6294,6 +6304,9 @@ def test_list_report_tasks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, analytics_data_api.ReportTask) for i in results) @@ -6386,6 +6399,8 @@ async def test_list_report_tasks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7857,6 +7872,9 @@ def test_list_audience_lists_rest_pager(transport: str = "rest"): pager = client.list_audience_lists(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, analytics_data_api.AudienceList) for i in results) @@ -8508,6 +8526,9 @@ def test_list_recurring_audience_lists_rest_pager(transport: str = "rest"): pager = client.list_recurring_audience_lists(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -9499,6 +9520,9 @@ def test_list_report_tasks_rest_pager(transport: str = "rest"): pager = client.list_report_tasks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, analytics_data_api.ReportTask) for i in results) diff --git a/packages/google-analytics-data/tests/unit/gapic/data_v1beta/test_beta_analytics_data.py b/packages/google-analytics-data/tests/unit/gapic/data_v1beta/test_beta_analytics_data.py index 2916de36cc8a..bc81b2a3f8a4 100644 --- a/packages/google-analytics-data/tests/unit/gapic/data_v1beta/test_beta_analytics_data.py +++ b/packages/google-analytics-data/tests/unit/gapic/data_v1beta/test_beta_analytics_data.py @@ -4681,6 +4681,9 @@ def test_list_audience_exports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, analytics_data_api.AudienceExport) for i in results) @@ -4773,6 +4776,8 @@ async def test_list_audience_exports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6049,6 +6054,9 @@ def test_list_audience_exports_rest_pager(transport: str = "rest"): pager = client.list_audience_exports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, analytics_data_api.AudienceExport) for i in results) diff --git a/packages/google-apps-card/noxfile.py b/packages/google-apps-card/noxfile.py index 07e5821e034b..f511d7304450 100644 --- a/packages/google-apps-card/noxfile.py +++ b/packages/google-apps-card/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-apps-card/testing/constraints-3.15.txt b/packages/google-apps-card/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-apps-card/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-apps-chat/noxfile.py b/packages/google-apps-chat/noxfile.py index 068d9b29104c..223762648271 100644 --- a/packages/google-apps-chat/noxfile.py +++ b/packages/google-apps-chat/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-apps-chat/testing/constraints-3.15.txt b/packages/google-apps-chat/testing/constraints-3.15.txt new file mode 100644 index 000000000000..dfbecf969055 --- /dev/null +++ b/packages/google-apps-chat/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-apps-card>=0 diff --git a/packages/google-apps-chat/tests/unit/gapic/chat_v1/test_chat_service.py b/packages/google-apps-chat/tests/unit/gapic/chat_v1/test_chat_service.py index 833b2f207c53..d1f36ac43178 100644 --- a/packages/google-apps-chat/tests/unit/gapic/chat_v1/test_chat_service.py +++ b/packages/google-apps-chat/tests/unit/gapic/chat_v1/test_chat_service.py @@ -2111,6 +2111,9 @@ def test_list_messages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, message.Message) for i in results) @@ -2199,6 +2202,8 @@ async def test_list_messages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2631,6 +2636,9 @@ def test_list_memberships_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, membership.Membership) for i in results) @@ -2719,6 +2727,8 @@ async def test_list_memberships_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4941,6 +4951,9 @@ def test_list_spaces_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, space.Space) for i in results) @@ -5029,6 +5042,8 @@ async def test_list_spaces_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5317,6 +5332,9 @@ def test_search_spaces_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, space.Space) for i in results) @@ -5405,6 +5423,8 @@ async def test_search_spaces_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7804,6 +7824,9 @@ def test_find_group_chats_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, space.Space) for i in results) @@ -7892,6 +7915,8 @@ async def test_find_group_chats_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9716,6 +9741,9 @@ def test_list_reactions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reaction.Reaction) for i in results) @@ -9804,6 +9832,8 @@ async def test_list_reactions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11033,6 +11063,9 @@ def test_list_custom_emojis_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reaction.CustomEmoji) for i in results) @@ -11125,6 +11158,8 @@ async def test_list_custom_emojis_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13283,6 +13318,9 @@ def test_list_space_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, space_event.SpaceEvent) for i in results) @@ -13375,6 +13413,8 @@ async def test_list_space_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15547,6 +15587,9 @@ def test_list_sections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, section.Section) for i in results) @@ -15635,6 +15678,8 @@ async def test_list_sections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16323,6 +16368,9 @@ def test_list_section_items_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, section.SectionItem) for i in results) @@ -16415,6 +16463,8 @@ async def test_list_section_items_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17270,6 +17320,9 @@ def test_list_messages_rest_pager(transport: str = "rest"): pager = client.list_messages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, message.Message) for i in results) @@ -17534,6 +17587,9 @@ def test_list_memberships_rest_pager(transport: str = "rest"): pager = client.list_memberships(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, membership.Membership) for i in results) @@ -18660,6 +18716,9 @@ def test_list_spaces_rest_pager(transport: str = "rest"): pager = client.list_spaces(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, space.Space) for i in results) @@ -18869,6 +18928,9 @@ def test_search_spaces_rest_pager(transport: str = "rest"): pager = client.search_spaces(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, space.Space) for i in results) @@ -20052,6 +20114,9 @@ def test_find_group_chats_rest_pager(transport: str = "rest"): pager = client.find_group_chats(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, space.Space) for i in results) @@ -21063,6 +21128,9 @@ def test_list_reactions_rest_pager(transport: str = "rest"): pager = client.list_reactions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reaction.Reaction) for i in results) @@ -21690,6 +21758,9 @@ def test_list_custom_emojis_rest_pager(transport: str = "rest"): pager = client.list_custom_emojis(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reaction.CustomEmoji) for i in results) @@ -22878,6 +22949,9 @@ def test_list_space_events_rest_pager(transport: str = "rest"): pager = client.list_space_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, space_event.SpaceEvent) for i in results) @@ -24066,6 +24140,9 @@ def test_list_sections_rest_pager(transport: str = "rest"): pager = client.list_sections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, section.Section) for i in results) @@ -24447,6 +24524,9 @@ def test_list_section_items_rest_pager(transport: str = "rest"): pager = client.list_section_items(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, section.SectionItem) for i in results) diff --git a/packages/google-apps-events-subscriptions/noxfile.py b/packages/google-apps-events-subscriptions/noxfile.py index 13b14c1d293c..32186e0a9fa2 100644 --- a/packages/google-apps-events-subscriptions/noxfile.py +++ b/packages/google-apps-events-subscriptions/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-apps-events-subscriptions/testing/constraints-3.15.txt b/packages/google-apps-events-subscriptions/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-apps-events-subscriptions/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-apps-events-subscriptions/tests/unit/gapic/events_subscriptions_v1/test_subscriptions_service.py b/packages/google-apps-events-subscriptions/tests/unit/gapic/events_subscriptions_v1/test_subscriptions_service.py index 605bf17a9c00..71d2aae563eb 100644 --- a/packages/google-apps-events-subscriptions/tests/unit/gapic/events_subscriptions_v1/test_subscriptions_service.py +++ b/packages/google-apps-events-subscriptions/tests/unit/gapic/events_subscriptions_v1/test_subscriptions_service.py @@ -2734,6 +2734,9 @@ def test_list_subscriptions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, subscription_resource.Subscription) for i in results) @@ -2826,6 +2829,8 @@ async def test_list_subscriptions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4411,6 +4416,9 @@ def test_list_subscriptions_rest_pager(transport: str = "rest"): pager = client.list_subscriptions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, subscription_resource.Subscription) for i in results) diff --git a/packages/google-apps-events-subscriptions/tests/unit/gapic/events_subscriptions_v1beta/test_subscriptions_service.py b/packages/google-apps-events-subscriptions/tests/unit/gapic/events_subscriptions_v1beta/test_subscriptions_service.py index 345cfccdded1..cc1648693023 100644 --- a/packages/google-apps-events-subscriptions/tests/unit/gapic/events_subscriptions_v1beta/test_subscriptions_service.py +++ b/packages/google-apps-events-subscriptions/tests/unit/gapic/events_subscriptions_v1beta/test_subscriptions_service.py @@ -2751,6 +2751,9 @@ def test_list_subscriptions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, subscription_resource.Subscription) for i in results) @@ -2843,6 +2846,8 @@ async def test_list_subscriptions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4444,6 +4449,9 @@ def test_list_subscriptions_rest_pager(transport: str = "rest"): pager = client.list_subscriptions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, subscription_resource.Subscription) for i in results) diff --git a/packages/google-apps-meet/noxfile.py b/packages/google-apps-meet/noxfile.py index e10102a15d42..18083afe34aa 100644 --- a/packages/google-apps-meet/noxfile.py +++ b/packages/google-apps-meet/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-apps-meet/testing/constraints-3.15.txt b/packages/google-apps-meet/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-apps-meet/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-apps-meet/tests/unit/gapic/meet_v2/test_conference_records_service.py b/packages/google-apps-meet/tests/unit/gapic/meet_v2/test_conference_records_service.py index 52ad350ae952..5b82e7a3d92d 100644 --- a/packages/google-apps-meet/tests/unit/gapic/meet_v2/test_conference_records_service.py +++ b/packages/google-apps-meet/tests/unit/gapic/meet_v2/test_conference_records_service.py @@ -1992,6 +1992,9 @@ def test_list_conference_records_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.ConferenceRecord) for i in results) @@ -2084,6 +2087,8 @@ async def test_list_conference_records_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2862,6 +2867,9 @@ def test_list_participants_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Participant) for i in results) @@ -2954,6 +2962,8 @@ async def test_list_participants_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3756,6 +3766,9 @@ def test_list_participant_sessions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.ParticipantSession) for i in results) @@ -3848,6 +3861,8 @@ async def test_list_participant_sessions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4602,6 +4617,9 @@ def test_list_recordings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Recording) for i in results) @@ -4690,6 +4708,8 @@ async def test_list_recordings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5444,6 +5464,9 @@ def test_list_transcripts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Transcript) for i in results) @@ -5532,6 +5555,8 @@ async def test_list_transcripts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6339,6 +6364,9 @@ def test_list_transcript_entries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.TranscriptEntry) for i in results) @@ -6431,6 +6459,8 @@ async def test_list_transcript_entries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6762,6 +6792,9 @@ def test_list_conference_records_rest_pager(transport: str = "rest"): pager = client.list_conference_records(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.ConferenceRecord) for i in results) @@ -7196,6 +7229,9 @@ def test_list_participants_rest_pager(transport: str = "rest"): pager = client.list_participants(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Participant) for i in results) @@ -7644,6 +7680,9 @@ def test_list_participant_sessions_rest_pager(transport: str = "rest"): pager = client.list_participant_sessions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.ParticipantSession) for i in results) @@ -8072,6 +8111,9 @@ def test_list_recordings_rest_pager(transport: str = "rest"): pager = client.list_recordings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Recording) for i in results) @@ -8502,6 +8544,9 @@ def test_list_transcripts_rest_pager(transport: str = "rest"): pager = client.list_transcripts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Transcript) for i in results) @@ -8947,6 +8992,9 @@ def test_list_transcript_entries_rest_pager(transport: str = "rest"): pager = client.list_transcript_entries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.TranscriptEntry) for i in results) diff --git a/packages/google-apps-meet/tests/unit/gapic/meet_v2beta/test_conference_records_service.py b/packages/google-apps-meet/tests/unit/gapic/meet_v2beta/test_conference_records_service.py index 994b620dfa15..dc264c44c02c 100644 --- a/packages/google-apps-meet/tests/unit/gapic/meet_v2beta/test_conference_records_service.py +++ b/packages/google-apps-meet/tests/unit/gapic/meet_v2beta/test_conference_records_service.py @@ -1992,6 +1992,9 @@ def test_list_conference_records_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.ConferenceRecord) for i in results) @@ -2084,6 +2087,8 @@ async def test_list_conference_records_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2862,6 +2867,9 @@ def test_list_participants_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Participant) for i in results) @@ -2954,6 +2962,8 @@ async def test_list_participants_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3756,6 +3766,9 @@ def test_list_participant_sessions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.ParticipantSession) for i in results) @@ -3848,6 +3861,8 @@ async def test_list_participant_sessions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4602,6 +4617,9 @@ def test_list_recordings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Recording) for i in results) @@ -4690,6 +4708,8 @@ async def test_list_recordings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5444,6 +5464,9 @@ def test_list_transcripts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Transcript) for i in results) @@ -5532,6 +5555,8 @@ async def test_list_transcripts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6339,6 +6364,9 @@ def test_list_transcript_entries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.TranscriptEntry) for i in results) @@ -6431,6 +6459,8 @@ async def test_list_transcript_entries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6762,6 +6792,9 @@ def test_list_conference_records_rest_pager(transport: str = "rest"): pager = client.list_conference_records(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.ConferenceRecord) for i in results) @@ -7198,6 +7231,9 @@ def test_list_participants_rest_pager(transport: str = "rest"): pager = client.list_participants(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Participant) for i in results) @@ -7646,6 +7682,9 @@ def test_list_participant_sessions_rest_pager(transport: str = "rest"): pager = client.list_participant_sessions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.ParticipantSession) for i in results) @@ -8076,6 +8115,9 @@ def test_list_recordings_rest_pager(transport: str = "rest"): pager = client.list_recordings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Recording) for i in results) @@ -8508,6 +8550,9 @@ def test_list_transcripts_rest_pager(transport: str = "rest"): pager = client.list_transcripts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Transcript) for i in results) @@ -8953,6 +8998,9 @@ def test_list_transcript_entries_rest_pager(transport: str = "rest"): pager = client.list_transcript_entries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.TranscriptEntry) for i in results) diff --git a/packages/google-apps-meet/tests/unit/gapic/meet_v2beta/test_spaces_service.py b/packages/google-apps-meet/tests/unit/gapic/meet_v2beta/test_spaces_service.py index 4768acc8166f..cf806cfb9cf5 100644 --- a/packages/google-apps-meet/tests/unit/gapic/meet_v2beta/test_spaces_service.py +++ b/packages/google-apps-meet/tests/unit/gapic/meet_v2beta/test_spaces_service.py @@ -3983,6 +3983,9 @@ def test_list_members_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Member) for i in results) @@ -4071,6 +4074,8 @@ async def test_list_members_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5850,6 +5855,9 @@ def test_list_members_rest_pager(transport: str = "rest"): pager = client.list_members(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Member) for i in results) diff --git a/packages/google-apps-script-type/noxfile.py b/packages/google-apps-script-type/noxfile.py index a40e278a5761..cafec865b601 100644 --- a/packages/google-apps-script-type/noxfile.py +++ b/packages/google-apps-script-type/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-apps-script-type/testing/constraints-3.15.txt b/packages/google-apps-script-type/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-apps-script-type/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-area120-tables/noxfile.py b/packages/google-area120-tables/noxfile.py index 4bcfad6e486e..ca4f95939487 100644 --- a/packages/google-area120-tables/noxfile.py +++ b/packages/google-area120-tables/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-area120-tables/testing/constraints-3.15.txt b/packages/google-area120-tables/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-area120-tables/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-area120-tables/tests/unit/gapic/tables_v1alpha1/test_tables_service.py b/packages/google-area120-tables/tests/unit/gapic/tables_v1alpha1/test_tables_service.py index 9645104fc34f..c130ad7c7e68 100644 --- a/packages/google-area120-tables/tests/unit/gapic/tables_v1alpha1/test_tables_service.py +++ b/packages/google-area120-tables/tests/unit/gapic/tables_v1alpha1/test_tables_service.py @@ -1877,6 +1877,9 @@ def test_list_tables_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tables.Table) for i in results) @@ -1965,6 +1968,8 @@ async def test_list_tables_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2569,6 +2574,9 @@ def test_list_workspaces_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tables.Workspace) for i in results) @@ -2657,6 +2665,8 @@ async def test_list_workspaces_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3403,6 +3413,9 @@ def test_list_rows_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tables.Row) for i in results) @@ -3491,6 +3504,8 @@ async def test_list_rows_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5508,6 +5523,9 @@ def test_list_tables_rest_pager(transport: str = "rest"): pager = client.list_tables(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tables.Table) for i in results) @@ -5779,6 +5797,9 @@ def test_list_workspaces_rest_pager(transport: str = "rest"): pager = client.list_workspaces(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tables.Workspace) for i in results) @@ -6209,6 +6230,9 @@ def test_list_rows_rest_pager(transport: str = "rest"): pager = client.list_rows(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tables.Row) for i in results) diff --git a/packages/google-backstory/noxfile.py b/packages/google-backstory/noxfile.py index 44eaafe8e0f6..dadfdb8639d3 100644 --- a/packages/google-backstory/noxfile.py +++ b/packages/google-backstory/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-backstory/testing/constraints-3.15.txt b/packages/google-backstory/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-backstory/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-access-approval/noxfile.py b/packages/google-cloud-access-approval/noxfile.py index 82e2a49f059d..3b5c48952d1e 100644 --- a/packages/google-cloud-access-approval/noxfile.py +++ b/packages/google-cloud-access-approval/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-access-approval/testing/constraints-3.15.txt b/packages/google-cloud-access-approval/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-access-approval/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-access-approval/tests/unit/gapic/accessapproval_v1/test_access_approval.py b/packages/google-cloud-access-approval/tests/unit/gapic/accessapproval_v1/test_access_approval.py index 43c633e45e69..569dc4e35efe 100644 --- a/packages/google-cloud-access-approval/tests/unit/gapic/accessapproval_v1/test_access_approval.py +++ b/packages/google-cloud-access-approval/tests/unit/gapic/accessapproval_v1/test_access_approval.py @@ -1725,6 +1725,9 @@ def test_list_approval_requests_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accessapproval.ApprovalRequest) for i in results) @@ -1817,6 +1820,8 @@ async def test_list_approval_requests_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4579,6 +4584,9 @@ def test_list_approval_requests_rest_pager(transport: str = "rest"): pager = client.list_approval_requests(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accessapproval.ApprovalRequest) for i in results) diff --git a/packages/google-cloud-advisorynotifications/noxfile.py b/packages/google-cloud-advisorynotifications/noxfile.py index af26b1ac1af3..7f750dacd6c2 100644 --- a/packages/google-cloud-advisorynotifications/noxfile.py +++ b/packages/google-cloud-advisorynotifications/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-advisorynotifications/testing/constraints-3.15.txt b/packages/google-cloud-advisorynotifications/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-advisorynotifications/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-advisorynotifications/tests/unit/gapic/advisorynotifications_v1/test_advisory_notifications_service.py b/packages/google-cloud-advisorynotifications/tests/unit/gapic/advisorynotifications_v1/test_advisory_notifications_service.py index 1943e69a832e..a7185772fa18 100644 --- a/packages/google-cloud-advisorynotifications/tests/unit/gapic/advisorynotifications_v1/test_advisory_notifications_service.py +++ b/packages/google-cloud-advisorynotifications/tests/unit/gapic/advisorynotifications_v1/test_advisory_notifications_service.py @@ -1832,6 +1832,9 @@ def test_list_notifications_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Notification) for i in results) @@ -1924,6 +1927,8 @@ async def test_list_notifications_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3214,6 +3219,9 @@ def test_list_notifications_rest_pager(transport: str = "rest"): pager = client.list_notifications(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Notification) for i in results) diff --git a/packages/google-cloud-agentidentitycredentials/noxfile.py b/packages/google-cloud-agentidentitycredentials/noxfile.py index e7d8e25739ad..850bc870a005 100644 --- a/packages/google-cloud-agentidentitycredentials/noxfile.py +++ b/packages/google-cloud-agentidentitycredentials/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-agentidentitycredentials/testing/constraints-3.15.txt b/packages/google-cloud-agentidentitycredentials/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-agentidentitycredentials/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-agentregistry/noxfile.py b/packages/google-cloud-agentregistry/noxfile.py index 30cc228cfbd6..3c1e4e02712f 100644 --- a/packages/google-cloud-agentregistry/noxfile.py +++ b/packages/google-cloud-agentregistry/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-agentregistry/testing/constraints-3.15.txt b/packages/google-cloud-agentregistry/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-agentregistry/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-agentregistry/tests/unit/gapic/agentregistry_v1/test_agent_registry.py b/packages/google-cloud-agentregistry/tests/unit/gapic/agentregistry_v1/test_agent_registry.py index bdf8eae5db6c..e12d74c3eb52 100644 --- a/packages/google-cloud-agentregistry/tests/unit/gapic/agentregistry_v1/test_agent_registry.py +++ b/packages/google-cloud-agentregistry/tests/unit/gapic/agentregistry_v1/test_agent_registry.py @@ -1723,6 +1723,9 @@ def test_list_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) @@ -1811,6 +1814,8 @@ async def test_list_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2241,6 +2246,9 @@ def test_search_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) @@ -2329,6 +2337,8 @@ async def test_search_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3101,6 +3111,9 @@ def test_list_endpoints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, endpoint.Endpoint) for i in results) @@ -3189,6 +3202,8 @@ async def test_list_endpoints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3955,6 +3970,9 @@ def test_list_mcp_servers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mcp_server.McpServer) for i in results) @@ -4043,6 +4061,8 @@ async def test_list_mcp_servers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4493,6 +4513,9 @@ def test_search_mcp_servers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mcp_server.McpServer) for i in results) @@ -4585,6 +4608,8 @@ async def test_search_mcp_servers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5353,6 +5378,9 @@ def test_list_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Service) for i in results) @@ -5441,6 +5469,8 @@ async def test_list_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7265,6 +7295,9 @@ def test_list_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, binding.Binding) for i in results) @@ -7353,6 +7386,8 @@ async def test_list_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9198,6 +9233,9 @@ def test_fetch_available_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, binding.Binding) for i in results) @@ -9290,6 +9328,8 @@ async def test_fetch_available_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9595,6 +9635,9 @@ def test_list_agents_rest_pager(transport: str = "rest"): pager = client.list_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) @@ -9837,6 +9880,9 @@ def test_search_agents_rest_pager(transport: str = "rest"): pager = client.search_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) @@ -10271,6 +10317,9 @@ def test_list_endpoints_rest_pager(transport: str = "rest"): pager = client.list_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, endpoint.Endpoint) for i in results) @@ -10711,6 +10760,9 @@ def test_list_mcp_servers_rest_pager(transport: str = "rest"): pager = client.list_mcp_servers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mcp_server.McpServer) for i in results) @@ -10959,6 +11011,9 @@ def test_search_mcp_servers_rest_pager(transport: str = "rest"): pager = client.search_mcp_servers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mcp_server.McpServer) for i in results) @@ -11395,6 +11450,9 @@ def test_list_services_rest_pager(transport: str = "rest"): pager = client.list_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Service) for i in results) @@ -12432,6 +12490,9 @@ def test_list_bindings_rest_pager(transport: str = "rest"): pager = client.list_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, binding.Binding) for i in results) @@ -13480,6 +13541,9 @@ def test_fetch_available_bindings_rest_pager(transport: str = "rest"): pager = client.fetch_available_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, binding.Binding) for i in results) diff --git a/packages/google-cloud-alloydb-connectors/noxfile.py b/packages/google-cloud-alloydb-connectors/noxfile.py index a050f3c1881d..1977ffda0f28 100644 --- a/packages/google-cloud-alloydb-connectors/noxfile.py +++ b/packages/google-cloud-alloydb-connectors/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-alloydb-connectors/testing/constraints-3.15.txt b/packages/google-cloud-alloydb-connectors/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-alloydb-connectors/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-alloydb/noxfile.py b/packages/google-cloud-alloydb/noxfile.py index 1f0b150ae2c6..51b6eb656302 100644 --- a/packages/google-cloud-alloydb/noxfile.py +++ b/packages/google-cloud-alloydb/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-alloydb/testing/constraints-3.15.txt b/packages/google-cloud-alloydb/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-alloydb/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-alloydb/tests/unit/gapic/alloydb_v1/test_alloy_db_admin.py b/packages/google-cloud-alloydb/tests/unit/gapic/alloydb_v1/test_alloy_db_admin.py index f86c28e4e6b6..5483cacbcdd4 100644 --- a/packages/google-cloud-alloydb/tests/unit/gapic/alloydb_v1/test_alloy_db_admin.py +++ b/packages/google-cloud-alloydb/tests/unit/gapic/alloydb_v1/test_alloy_db_admin.py @@ -1701,6 +1701,9 @@ def test_list_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Cluster) for i in results) @@ -1789,6 +1792,8 @@ async def test_list_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6030,6 +6035,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Instance) for i in results) @@ -6118,6 +6126,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9970,6 +9980,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Backup) for i in results) @@ -10058,6 +10071,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11899,6 +11914,9 @@ def test_list_supported_database_flags_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SupportedDatabaseFlag) for i in results) @@ -11991,6 +12009,8 @@ async def test_list_supported_database_flags_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13138,6 +13158,9 @@ def test_list_users_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.User) for i in results) @@ -13226,6 +13249,8 @@ async def test_list_users_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15010,6 +15035,9 @@ def test_list_databases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Database) for i in results) @@ -15098,6 +15126,8 @@ async def test_list_databases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15397,6 +15427,9 @@ def test_list_clusters_rest_pager(transport: str = "rest"): pager = client.list_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Cluster) for i in results) @@ -17746,6 +17779,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Instance) for i in results) @@ -19912,6 +19948,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Backup) for i in results) @@ -20952,6 +20991,9 @@ def test_list_supported_database_flags_rest_pager(transport: str = "rest"): pager = client.list_supported_database_flags(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SupportedDatabaseFlag) for i in results) @@ -21584,6 +21626,9 @@ def test_list_users_rest_pager(transport: str = "rest"): pager = client.list_users(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.User) for i in results) @@ -22624,6 +22669,9 @@ def test_list_databases_rest_pager(transport: str = "rest"): pager = client.list_databases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Database) for i in results) diff --git a/packages/google-cloud-alloydb/tests/unit/gapic/alloydb_v1alpha/test_alloy_db_admin.py b/packages/google-cloud-alloydb/tests/unit/gapic/alloydb_v1alpha/test_alloy_db_admin.py index 9e1045bee6f9..f6062b324b82 100644 --- a/packages/google-cloud-alloydb/tests/unit/gapic/alloydb_v1alpha/test_alloy_db_admin.py +++ b/packages/google-cloud-alloydb/tests/unit/gapic/alloydb_v1alpha/test_alloy_db_admin.py @@ -1707,6 +1707,9 @@ def test_list_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Cluster) for i in results) @@ -1795,6 +1798,8 @@ async def test_list_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6044,6 +6049,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Instance) for i in results) @@ -6132,6 +6140,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9988,6 +9998,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Backup) for i in results) @@ -10076,6 +10089,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11921,6 +11936,9 @@ def test_list_supported_database_flags_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SupportedDatabaseFlag) for i in results) @@ -12013,6 +12031,8 @@ async def test_list_supported_database_flags_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13174,6 +13194,9 @@ def test_list_users_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.User) for i in results) @@ -13262,6 +13285,8 @@ async def test_list_users_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15046,6 +15071,9 @@ def test_list_databases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Database) for i in results) @@ -15134,6 +15162,8 @@ async def test_list_databases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15800,6 +15830,9 @@ def test_list_clusters_rest_pager(transport: str = "rest"): pager = client.list_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Cluster) for i in results) @@ -18152,6 +18185,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Instance) for i in results) @@ -20324,6 +20360,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Backup) for i in results) @@ -21367,6 +21406,9 @@ def test_list_supported_database_flags_rest_pager(transport: str = "rest"): pager = client.list_supported_database_flags(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SupportedDatabaseFlag) for i in results) @@ -21999,6 +22041,9 @@ def test_list_users_rest_pager(transport: str = "rest"): pager = client.list_users(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.User) for i in results) @@ -23039,6 +23084,9 @@ def test_list_databases_rest_pager(transport: str = "rest"): pager = client.list_databases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Database) for i in results) diff --git a/packages/google-cloud-alloydb/tests/unit/gapic/alloydb_v1beta/test_alloy_db_admin.py b/packages/google-cloud-alloydb/tests/unit/gapic/alloydb_v1beta/test_alloy_db_admin.py index ef56d46aca05..612385e808bc 100644 --- a/packages/google-cloud-alloydb/tests/unit/gapic/alloydb_v1beta/test_alloy_db_admin.py +++ b/packages/google-cloud-alloydb/tests/unit/gapic/alloydb_v1beta/test_alloy_db_admin.py @@ -1707,6 +1707,9 @@ def test_list_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Cluster) for i in results) @@ -1795,6 +1798,8 @@ async def test_list_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6040,6 +6045,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Instance) for i in results) @@ -6128,6 +6136,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9980,6 +9990,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Backup) for i in results) @@ -10068,6 +10081,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11909,6 +11924,9 @@ def test_list_supported_database_flags_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SupportedDatabaseFlag) for i in results) @@ -12001,6 +12019,8 @@ async def test_list_supported_database_flags_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13162,6 +13182,9 @@ def test_list_users_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.User) for i in results) @@ -13250,6 +13273,8 @@ async def test_list_users_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15034,6 +15059,9 @@ def test_list_databases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Database) for i in results) @@ -15122,6 +15150,8 @@ async def test_list_databases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15788,6 +15818,9 @@ def test_list_clusters_rest_pager(transport: str = "rest"): pager = client.list_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Cluster) for i in results) @@ -18140,6 +18173,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Instance) for i in results) @@ -20312,6 +20348,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Backup) for i in results) @@ -21355,6 +21394,9 @@ def test_list_supported_database_flags_rest_pager(transport: str = "rest"): pager = client.list_supported_database_flags(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SupportedDatabaseFlag) for i in results) @@ -21987,6 +22029,9 @@ def test_list_users_rest_pager(transport: str = "rest"): pager = client.list_users(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.User) for i in results) @@ -23027,6 +23072,9 @@ def test_list_databases_rest_pager(transport: str = "rest"): pager = client.list_databases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Database) for i in results) diff --git a/packages/google-cloud-api-gateway/noxfile.py b/packages/google-cloud-api-gateway/noxfile.py index 5d48da9f9b29..813c76669835 100644 --- a/packages/google-cloud-api-gateway/noxfile.py +++ b/packages/google-cloud-api-gateway/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-api-gateway/testing/constraints-3.15.txt b/packages/google-cloud-api-gateway/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-api-gateway/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-api-gateway/tests/unit/gapic/apigateway_v1/test_api_gateway_service.py b/packages/google-cloud-api-gateway/tests/unit/gapic/apigateway_v1/test_api_gateway_service.py index 774368c084c5..8f189ba28d7a 100644 --- a/packages/google-cloud-api-gateway/tests/unit/gapic/apigateway_v1/test_api_gateway_service.py +++ b/packages/google-cloud-api-gateway/tests/unit/gapic/apigateway_v1/test_api_gateway_service.py @@ -1752,6 +1752,9 @@ def test_list_gateways_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, apigateway.Gateway) for i in results) @@ -1840,6 +1843,8 @@ async def test_list_gateways_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3622,6 +3627,9 @@ def test_list_apis_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, apigateway.Api) for i in results) @@ -3710,6 +3718,8 @@ async def test_list_apis_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5484,6 +5494,9 @@ def test_list_api_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, apigateway.ApiConfig) for i in results) @@ -5572,6 +5585,8 @@ async def test_list_api_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7273,6 +7288,9 @@ def test_list_gateways_rest_pager(transport: str = "rest"): pager = client.list_gateways(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, apigateway.Gateway) for i in results) @@ -8263,6 +8281,9 @@ def test_list_apis_rest_pager(transport: str = "rest"): pager = client.list_apis(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, apigateway.Api) for i in results) @@ -9251,6 +9272,9 @@ def test_list_api_configs_rest_pager(transport: str = "rest"): pager = client.list_api_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, apigateway.ApiConfig) for i in results) diff --git a/packages/google-cloud-api-keys/noxfile.py b/packages/google-cloud-api-keys/noxfile.py index 086c9842c20b..b768146943fa 100644 --- a/packages/google-cloud-api-keys/noxfile.py +++ b/packages/google-cloud-api-keys/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-api-keys/testing/constraints-3.15.txt b/packages/google-cloud-api-keys/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-api-keys/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-api-keys/tests/unit/gapic/api_keys_v2/test_api_keys.py b/packages/google-cloud-api-keys/tests/unit/gapic/api_keys_v2/test_api_keys.py index f7b6efbe61b9..01c5e2e50b6c 100644 --- a/packages/google-cloud-api-keys/tests/unit/gapic/api_keys_v2/test_api_keys.py +++ b/packages/google-cloud-api-keys/tests/unit/gapic/api_keys_v2/test_api_keys.py @@ -1987,6 +1987,9 @@ def test_list_keys_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Key) for i in results) @@ -2075,6 +2078,8 @@ async def test_list_keys_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4308,6 +4313,9 @@ def test_list_keys_rest_pager(transport: str = "rest"): pager = client.list_keys(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Key) for i in results) diff --git a/packages/google-cloud-apigee-connect/noxfile.py b/packages/google-cloud-apigee-connect/noxfile.py index 3d316ce17189..69e109855335 100644 --- a/packages/google-cloud-apigee-connect/noxfile.py +++ b/packages/google-cloud-apigee-connect/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-apigee-connect/testing/constraints-3.15.txt b/packages/google-cloud-apigee-connect/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-apigee-connect/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-apigee-connect/tests/unit/gapic/apigeeconnect_v1/test_connection_service.py b/packages/google-cloud-apigee-connect/tests/unit/gapic/apigeeconnect_v1/test_connection_service.py index ad55c75c9fdb..06574fdf3236 100644 --- a/packages/google-cloud-apigee-connect/tests/unit/gapic/apigeeconnect_v1/test_connection_service.py +++ b/packages/google-cloud-apigee-connect/tests/unit/gapic/apigeeconnect_v1/test_connection_service.py @@ -1703,6 +1703,9 @@ def test_list_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, connection.Connection) for i in results) @@ -1791,6 +1794,8 @@ async def test_list_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-apigee-registry/noxfile.py b/packages/google-cloud-apigee-registry/noxfile.py index 48e99b7dc8f1..bae7a357e89d 100644 --- a/packages/google-cloud-apigee-registry/noxfile.py +++ b/packages/google-cloud-apigee-registry/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-apigee-registry/testing/constraints-3.15.txt b/packages/google-cloud-apigee-registry/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-apigee-registry/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-apigee-registry/tests/unit/gapic/apigee_registry_v1/test_registry.py b/packages/google-cloud-apigee-registry/tests/unit/gapic/apigee_registry_v1/test_registry.py index 2f34c448f99c..41c13f21913f 100644 --- a/packages/google-cloud-apigee-registry/tests/unit/gapic/apigee_registry_v1/test_registry.py +++ b/packages/google-cloud-apigee-registry/tests/unit/gapic/apigee_registry_v1/test_registry.py @@ -1650,6 +1650,9 @@ def test_list_apis_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.Api) for i in results) @@ -1738,6 +1741,8 @@ async def test_list_apis_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3538,6 +3543,9 @@ def test_list_api_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.ApiVersion) for i in results) @@ -3630,6 +3638,8 @@ async def test_list_api_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5464,6 +5474,9 @@ def test_list_api_specs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.ApiSpec) for i in results) @@ -5552,6 +5565,8 @@ async def test_list_api_specs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7967,6 +7982,9 @@ def test_list_api_spec_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.ApiSpec) for i in results) @@ -8059,6 +8077,8 @@ async def test_list_api_spec_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9178,6 +9198,9 @@ def test_list_api_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.ApiDeployment) for i in results) @@ -9270,6 +9293,8 @@ async def test_list_api_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11421,6 +11446,9 @@ def test_list_api_deployment_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.ApiDeployment) for i in results) @@ -11513,6 +11541,8 @@ async def test_list_api_deployment_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12617,6 +12647,9 @@ def test_list_artifacts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.Artifact) for i in results) @@ -12705,6 +12738,8 @@ async def test_list_artifacts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14703,6 +14738,9 @@ def test_list_apis_rest_pager(transport: str = "rest"): pager = client.list_apis(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.Api) for i in results) @@ -15710,6 +15748,9 @@ def test_list_api_versions_rest_pager(transport: str = "rest"): pager = client.list_api_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.ApiVersion) for i in results) @@ -16743,6 +16784,9 @@ def test_list_api_specs_rest_pager(transport: str = "rest"): pager = client.list_api_specs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.ApiSpec) for i in results) @@ -18030,6 +18074,9 @@ def test_list_api_spec_revisions_rest_pager(transport: str = "rest"): pager = client.list_api_spec_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.ApiSpec) for i in results) @@ -18612,6 +18659,9 @@ def test_list_api_deployments_rest_pager(transport: str = "rest"): pager = client.list_api_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.ApiDeployment) for i in results) @@ -19738,6 +19788,9 @@ def test_list_api_deployment_revisions_rest_pager(transport: str = "rest"): pager = client.list_api_deployment_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.ApiDeployment) for i in results) @@ -20320,6 +20373,9 @@ def test_list_artifacts_rest_pager(transport: str = "rest"): pager = client.list_artifacts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, registry_models.Artifact) for i in results) diff --git a/packages/google-cloud-apihub/noxfile.py b/packages/google-cloud-apihub/noxfile.py index ce015b92c88c..57255d6ff7e8 100644 --- a/packages/google-cloud-apihub/noxfile.py +++ b/packages/google-cloud-apihub/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-apihub/testing/constraints-3.15.txt b/packages/google-cloud-apihub/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-apihub/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub.py b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub.py index 8dda1f320098..90af2752ffd1 100644 --- a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub.py +++ b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub.py @@ -2329,6 +2329,9 @@ def test_list_apis_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.Api) for i in results) @@ -2417,6 +2420,8 @@ async def test_list_apis_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4227,6 +4232,9 @@ def test_list_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.Version) for i in results) @@ -4315,6 +4323,8 @@ async def test_list_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6441,6 +6451,9 @@ def test_list_specs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.Spec) for i in results) @@ -6529,6 +6542,8 @@ async def test_list_specs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8343,6 +8358,9 @@ def test_list_api_operations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.ApiOperation) for i in results) @@ -8435,6 +8453,8 @@ async def test_list_api_operations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10629,6 +10649,9 @@ def test_list_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.Deployment) for i in results) @@ -10717,6 +10740,8 @@ async def test_list_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13269,6 +13294,9 @@ def test_list_attributes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.Attribute) for i in results) @@ -13357,6 +13385,8 @@ async def test_list_attributes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13801,6 +13831,9 @@ def test_search_resources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, apihub_service.SearchResult) for i in results) @@ -13889,6 +13922,8 @@ async def test_search_resources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15753,6 +15788,9 @@ def test_list_external_apis_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.ExternalApi) for i in results) @@ -15845,6 +15883,8 @@ async def test_list_external_apis_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16509,6 +16549,9 @@ def test_list_apis_rest_pager(transport: str = "rest"): pager = client.list_apis(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.Api) for i in results) @@ -17497,6 +17540,9 @@ def test_list_versions_rest_pager(transport: str = "rest"): pager = client.list_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.Version) for i in results) @@ -18677,6 +18723,9 @@ def test_list_specs_rest_pager(transport: str = "rest"): pager = client.list_specs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.Spec) for i in results) @@ -19689,6 +19738,9 @@ def test_list_api_operations_rest_pager(transport: str = "rest"): pager = client.list_api_operations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.ApiOperation) for i in results) @@ -20877,6 +20929,9 @@ def test_list_deployments_rest_pager(transport: str = "rest"): pager = client.list_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.Deployment) for i in results) @@ -22244,6 +22299,9 @@ def test_list_attributes_rest_pager(transport: str = "rest"): pager = client.list_attributes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.Attribute) for i in results) @@ -22502,6 +22560,9 @@ def test_search_resources_rest_pager(transport: str = "rest"): pager = client.search_resources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, apihub_service.SearchResult) for i in results) @@ -23514,6 +23575,9 @@ def test_list_external_apis_rest_pager(transport: str = "rest"): pager = client.list_external_apis(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.ExternalApi) for i in results) diff --git a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_curate.py b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_curate.py index a2d75330cf45..1e9e7d408813 100644 --- a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_curate.py +++ b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_curate.py @@ -2415,6 +2415,9 @@ def test_list_curations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, curate_service.Curation) for i in results) @@ -2503,6 +2506,8 @@ async def test_list_curations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3849,6 +3854,9 @@ def test_list_curations_rest_pager(transport: str = "rest"): pager = client.list_curations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, curate_service.Curation) for i in results) diff --git a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_dependencies.py b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_dependencies.py index e7485e221377..a103a76073ce 100644 --- a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_dependencies.py +++ b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_dependencies.py @@ -3160,6 +3160,9 @@ def test_list_dependencies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.Dependency) for i in results) @@ -3252,6 +3255,8 @@ async def test_list_dependencies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4302,6 +4307,9 @@ def test_list_dependencies_rest_pager(transport: str = "rest"): pager = client.list_dependencies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.Dependency) for i in results) diff --git a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_discovery.py b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_discovery.py index fcb71321ebd5..6c857cce3830 100644 --- a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_discovery.py +++ b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_discovery.py @@ -1750,6 +1750,9 @@ def test_list_discovered_api_observations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1844,6 +1847,8 @@ async def test_list_discovered_api_observations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2690,6 +2695,9 @@ def test_list_discovered_api_operations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.DiscoveredApiOperation) for i in results) @@ -2782,6 +2790,8 @@ async def test_list_discovered_api_operations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3459,6 +3469,9 @@ def test_list_discovered_api_observations_rest_pager(transport: str = "rest"): pager = client.list_discovered_api_observations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3922,6 +3935,9 @@ def test_list_discovered_api_operations_rest_pager(transport: str = "rest"): pager = client.list_discovered_api_operations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common_fields.DiscoveredApiOperation) for i in results) diff --git a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_plugin.py b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_plugin.py index a50c3a9cd54c..a4ed1c7910ea 100644 --- a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_plugin.py +++ b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_api_hub_plugin.py @@ -3098,6 +3098,9 @@ def test_list_plugins_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, plugin_service.Plugin) for i in results) @@ -3186,6 +3189,8 @@ async def test_list_plugins_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5063,6 +5068,9 @@ def test_list_plugin_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, plugin_service.PluginInstance) for i in results) @@ -5155,6 +5163,8 @@ async def test_list_plugin_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7621,6 +7631,9 @@ def test_list_plugins_rest_pager(transport: str = "rest"): pager = client.list_plugins(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, plugin_service.Plugin) for i in results) @@ -8648,6 +8661,9 @@ def test_list_plugin_instances_rest_pager(transport: str = "rest"): pager = client.list_plugin_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, plugin_service.PluginInstance) for i in results) diff --git a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_host_project_registration_service.py b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_host_project_registration_service.py index eeb4692bf5de..b2315d37c411 100644 --- a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_host_project_registration_service.py +++ b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_host_project_registration_service.py @@ -2617,6 +2617,9 @@ def test_list_host_project_registrations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2712,6 +2715,8 @@ async def test_list_host_project_registrations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3464,6 +3469,9 @@ def test_list_host_project_registrations_rest_pager(transport: str = "rest"): pager = client.list_host_project_registrations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_runtime_project_attachment_service.py b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_runtime_project_attachment_service.py index 8d349bd07212..157f71c8ead4 100644 --- a/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_runtime_project_attachment_service.py +++ b/packages/google-cloud-apihub/tests/unit/gapic/apihub_v1/test_runtime_project_attachment_service.py @@ -2642,6 +2642,9 @@ def test_list_runtime_project_attachments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2737,6 +2740,8 @@ async def test_list_runtime_project_attachments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4193,6 +4198,9 @@ def test_list_runtime_project_attachments_rest_pager(transport: str = "rest"): pager = client.list_runtime_project_attachments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-apiregistry/noxfile.py b/packages/google-cloud-apiregistry/noxfile.py index eea4a81bee54..b6b3e93048bc 100644 --- a/packages/google-cloud-apiregistry/noxfile.py +++ b/packages/google-cloud-apiregistry/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-apiregistry/testing/constraints-3.15.txt b/packages/google-cloud-apiregistry/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-apiregistry/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-apiregistry/tests/unit/gapic/apiregistry_v1beta/test_cloud_api_registry.py b/packages/google-cloud-apiregistry/tests/unit/gapic/apiregistry_v1beta/test_cloud_api_registry.py index 75819d8911d3..91bdf4e21bc8 100644 --- a/packages/google-cloud-apiregistry/tests/unit/gapic/apiregistry_v1beta/test_cloud_api_registry.py +++ b/packages/google-cloud-apiregistry/tests/unit/gapic/apiregistry_v1beta/test_cloud_api_registry.py @@ -2076,6 +2076,9 @@ def test_list_mcp_servers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.McpServer) for i in results) @@ -2164,6 +2167,8 @@ async def test_list_mcp_servers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2932,6 +2937,9 @@ def test_list_mcp_tools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.McpTool) for i in results) @@ -3020,6 +3028,8 @@ async def test_list_mcp_tools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3502,6 +3512,9 @@ def test_list_mcp_servers_rest_pager(transport: str = "rest"): pager = client.list_mcp_servers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.McpServer) for i in results) @@ -3940,6 +3953,9 @@ def test_list_mcp_tools_rest_pager(transport: str = "rest"): pager = client.list_mcp_tools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.McpTool) for i in results) diff --git a/packages/google-cloud-appengine-admin/noxfile.py b/packages/google-cloud-appengine-admin/noxfile.py index ab3410edfff2..2439405c5c45 100644 --- a/packages/google-cloud-appengine-admin/noxfile.py +++ b/packages/google-cloud-appengine-admin/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-appengine-admin/testing/constraints-3.15.txt b/packages/google-cloud-appengine-admin/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-appengine-admin/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_authorized_certificates.py b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_authorized_certificates.py index 5378f4535dc3..a854f87981ee 100644 --- a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_authorized_certificates.py +++ b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_authorized_certificates.py @@ -1707,6 +1707,9 @@ def test_list_authorized_certificates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, certificate.AuthorizedCertificate) for i in results) @@ -1799,6 +1802,8 @@ async def test_list_authorized_certificates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3037,6 +3042,9 @@ def test_list_authorized_certificates_rest_pager(transport: str = "rest"): pager = client.list_authorized_certificates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, certificate.AuthorizedCertificate) for i in results) diff --git a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_authorized_domains.py b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_authorized_domains.py index 2892524340e3..91eb66777779 100644 --- a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_authorized_domains.py +++ b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_authorized_domains.py @@ -1677,6 +1677,9 @@ def test_list_authorized_domains_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, domain.AuthorizedDomain) for i in results) @@ -1769,6 +1772,8 @@ async def test_list_authorized_domains_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -1919,6 +1924,9 @@ def test_list_authorized_domains_rest_pager(transport: str = "rest"): pager = client.list_authorized_domains(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, domain.AuthorizedDomain) for i in results) diff --git a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_domain_mappings.py b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_domain_mappings.py index 2cd412e7944b..bb8ad45063a3 100644 --- a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_domain_mappings.py +++ b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_domain_mappings.py @@ -1646,6 +1646,9 @@ def test_list_domain_mappings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, domain_mapping.DomainMapping) for i in results) @@ -1738,6 +1741,8 @@ async def test_list_domain_mappings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2936,6 +2941,9 @@ def test_list_domain_mappings_rest_pager(transport: str = "rest"): pager = client.list_domain_mappings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, domain_mapping.DomainMapping) for i in results) diff --git a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_firewall.py b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_firewall.py index 302c63904964..635ef419d754 100644 --- a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_firewall.py +++ b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_firewall.py @@ -1580,6 +1580,9 @@ def test_list_ingress_rules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, firewall.FirewallRule) for i in results) @@ -1672,6 +1675,8 @@ async def test_list_ingress_rules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3112,6 +3117,9 @@ def test_list_ingress_rules_rest_pager(transport: str = "rest"): pager = client.list_ingress_rules(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, firewall.FirewallRule) for i in results) diff --git a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_instances.py b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_instances.py index 70b505b1ba4a..573c1df7c41b 100644 --- a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_instances.py +++ b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_instances.py @@ -1582,6 +1582,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) @@ -1670,6 +1673,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2605,6 +2610,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) diff --git a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_services.py b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_services.py index 675b975e3b5a..45a084d05692 100644 --- a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_services.py +++ b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_services.py @@ -1569,6 +1569,9 @@ def test_list_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Service) for i in results) @@ -1657,6 +1660,8 @@ async def test_list_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2534,6 +2539,9 @@ def test_list_services_rest_pager(transport: str = "rest"): pager = client.list_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Service) for i in results) diff --git a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_versions.py b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_versions.py index aef53ff40353..44fa1d3b8def 100644 --- a/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_versions.py +++ b/packages/google-cloud-appengine-admin/tests/unit/gapic/appengine_admin_v1/test_versions.py @@ -1571,6 +1571,9 @@ def test_list_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) @@ -1659,6 +1662,8 @@ async def test_list_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2854,6 +2859,9 @@ def test_list_versions_rest_pager(transport: str = "rest"): pager = client.list_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) diff --git a/packages/google-cloud-appengine-logging/noxfile.py b/packages/google-cloud-appengine-logging/noxfile.py index 9d295bb84faa..b56738ccb3b0 100644 --- a/packages/google-cloud-appengine-logging/noxfile.py +++ b/packages/google-cloud-appengine-logging/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-appengine-logging/testing/constraints-3.15.txt b/packages/google-cloud-appengine-logging/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-appengine-logging/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-apphub/noxfile.py b/packages/google-cloud-apphub/noxfile.py index 1ef74909a0de..323f295d3a02 100644 --- a/packages/google-cloud-apphub/noxfile.py +++ b/packages/google-cloud-apphub/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-apphub/testing/constraints-3.15.txt b/packages/google-cloud-apphub/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-apphub/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-apphub/tests/unit/gapic/apphub_v1/test_app_hub.py b/packages/google-cloud-apphub/tests/unit/gapic/apphub_v1/test_app_hub.py index c5c33787561a..a105d3398b50 100644 --- a/packages/google-cloud-apphub/tests/unit/gapic/apphub_v1/test_app_hub.py +++ b/packages/google-cloud-apphub/tests/unit/gapic/apphub_v1/test_app_hub.py @@ -2026,6 +2026,9 @@ def test_list_service_project_attachments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2121,6 +2124,8 @@ async def test_list_service_project_attachments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4027,6 +4032,9 @@ def test_list_discovered_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.DiscoveredService) for i in results) @@ -4119,6 +4127,8 @@ async def test_list_discovered_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5253,6 +5263,9 @@ def test_list_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Service) for i in results) @@ -5341,6 +5354,8 @@ async def test_list_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7162,6 +7177,9 @@ def test_list_discovered_workloads_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workload.DiscoveredWorkload) for i in results) @@ -7254,6 +7272,8 @@ async def test_list_discovered_workloads_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8388,6 +8408,9 @@ def test_list_workloads_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workload.Workload) for i in results) @@ -8476,6 +8499,8 @@ async def test_list_workloads_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10290,6 +10315,9 @@ def test_list_applications_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, application.Application) for i in results) @@ -10382,6 +10410,8 @@ async def test_list_applications_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12305,6 +12335,9 @@ def test_list_service_project_attachments_rest_pager(transport: str = "rest"): pager = client.list_service_project_attachments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -13387,6 +13420,9 @@ def test_list_discovered_services_rest_pager(transport: str = "rest"): pager = client.list_discovered_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.DiscoveredService) for i in results) @@ -14046,6 +14082,9 @@ def test_list_services_rest_pager(transport: str = "rest"): pager = client.list_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Service) for i in results) @@ -15091,6 +15130,9 @@ def test_list_discovered_workloads_rest_pager(transport: str = "rest"): pager = client.list_discovered_workloads(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workload.DiscoveredWorkload) for i in results) @@ -15750,6 +15792,9 @@ def test_list_workloads_rest_pager(transport: str = "rest"): pager = client.list_workloads(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workload.Workload) for i in results) @@ -16790,6 +16835,9 @@ def test_list_applications_rest_pager(transport: str = "rest"): pager = client.list_applications(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, application.Application) for i in results) diff --git a/packages/google-cloud-appoptimize/noxfile.py b/packages/google-cloud-appoptimize/noxfile.py index 00436f115a7e..72f0ed5855a1 100644 --- a/packages/google-cloud-appoptimize/noxfile.py +++ b/packages/google-cloud-appoptimize/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-appoptimize/testing/constraints-3.15.txt b/packages/google-cloud-appoptimize/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-appoptimize/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-appoptimize/tests/unit/gapic/appoptimize_v1beta/test_app_optimize.py b/packages/google-cloud-appoptimize/tests/unit/gapic/appoptimize_v1beta/test_app_optimize.py index b67a1cfab08b..a8f911e0aa3e 100644 --- a/packages/google-cloud-appoptimize/tests/unit/gapic/appoptimize_v1beta/test_app_optimize.py +++ b/packages/google-cloud-appoptimize/tests/unit/gapic/appoptimize_v1beta/test_app_optimize.py @@ -2356,6 +2356,9 @@ def test_list_reports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app_optimize.Report) for i in results) @@ -2444,6 +2447,8 @@ async def test_list_reports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3184,6 +3189,9 @@ def test_read_report_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, Sequence) for i in results) @@ -3272,6 +3280,8 @@ async def test_read_report_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3956,6 +3966,9 @@ def test_list_reports_rest_pager(transport: str = "rest"): pager = client.list_reports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app_optimize.Report) for i in results) @@ -4369,6 +4382,9 @@ def test_read_report_rest_pager(transport: str = "rest"): pager = client.read_report(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, Sequence) for i in results) diff --git a/packages/google-cloud-artifact-registry/noxfile.py b/packages/google-cloud-artifact-registry/noxfile.py index a5ca48ed78cc..31f2eefc7652 100644 --- a/packages/google-cloud-artifact-registry/noxfile.py +++ b/packages/google-cloud-artifact-registry/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-artifact-registry/testing/constraints-3.15.txt b/packages/google-cloud-artifact-registry/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-artifact-registry/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-artifact-registry/tests/unit/gapic/artifactregistry_v1/test_artifact_registry.py b/packages/google-cloud-artifact-registry/tests/unit/gapic/artifactregistry_v1/test_artifact_registry.py index ed2c9c4277b6..98c0600fc91c 100644 --- a/packages/google-cloud-artifact-registry/tests/unit/gapic/artifactregistry_v1/test_artifact_registry.py +++ b/packages/google-cloud-artifact-registry/tests/unit/gapic/artifactregistry_v1/test_artifact_registry.py @@ -1791,6 +1791,9 @@ def test_list_docker_images_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, artifact.DockerImage) for i in results) @@ -1883,6 +1886,8 @@ async def test_list_docker_images_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2681,6 +2686,9 @@ def test_list_maven_artifacts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, artifact.MavenArtifact) for i in results) @@ -2773,6 +2781,8 @@ async def test_list_maven_artifacts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3579,6 +3589,9 @@ def test_list_npm_packages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, artifact.NpmPackage) for i in results) @@ -3671,6 +3684,8 @@ async def test_list_npm_packages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4455,6 +4470,9 @@ def test_list_python_packages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, artifact.PythonPackage) for i in results) @@ -4547,6 +4565,8 @@ async def test_list_python_packages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5877,6 +5897,9 @@ def test_list_repositories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, repository.Repository) for i in results) @@ -5969,6 +5992,8 @@ async def test_list_repositories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7911,6 +7936,9 @@ def test_list_packages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, package.Package) for i in results) @@ -7999,6 +8027,8 @@ async def test_list_packages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9083,6 +9113,9 @@ def test_list_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) @@ -9171,6 +9204,8 @@ async def test_list_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10942,6 +10977,9 @@ def test_list_files_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, file.File) for i in results) @@ -11030,6 +11068,8 @@ async def test_list_files_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12446,6 +12486,9 @@ def test_list_tags_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag.Tag) for i in results) @@ -12534,6 +12577,8 @@ async def test_list_tags_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14618,6 +14663,9 @@ def test_list_rules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rule.Rule) for i in results) @@ -14706,6 +14754,8 @@ async def test_list_rules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18653,6 +18703,9 @@ def test_list_attachments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, attachment.Attachment) for i in results) @@ -18741,6 +18794,8 @@ async def test_list_attachments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20355,6 +20410,9 @@ def test_list_docker_images_rest_pager(transport: str = "rest"): pager = client.list_docker_images(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, artifact.DockerImage) for i in results) @@ -20801,6 +20859,9 @@ def test_list_maven_artifacts_rest_pager(transport: str = "rest"): pager = client.list_maven_artifacts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, artifact.MavenArtifact) for i in results) @@ -21245,6 +21306,9 @@ def test_list_npm_packages_rest_pager(transport: str = "rest"): pager = client.list_npm_packages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, artifact.NpmPackage) for i in results) @@ -21689,6 +21753,9 @@ def test_list_python_packages_rest_pager(transport: str = "rest"): pager = client.list_python_packages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, artifact.PythonPackage) for i in results) @@ -22223,6 +22290,9 @@ def test_list_repositories_rest_pager(transport: str = "rest"): pager = client.list_repositories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, repository.Repository) for i in results) @@ -23170,6 +23240,9 @@ def test_list_packages_rest_pager(transport: str = "rest"): pager = client.list_packages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, package.Package) for i in results) @@ -23684,6 +23757,9 @@ def test_list_versions_rest_pager(transport: str = "rest"): pager = client.list_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) @@ -24507,6 +24583,9 @@ def test_list_files_rest_pager(transport: str = "rest"): pager = client.list_files(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, file.File) for i in results) @@ -25209,6 +25288,9 @@ def test_list_tags_rest_pager(transport: str = "rest"): pager = client.list_tags(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag.Tag) for i in results) @@ -26040,6 +26122,9 @@ def test_list_rules_rest_pager(transport: str = "rest"): pager = client.list_rules(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rule.Rule) for i in results) @@ -27801,6 +27886,9 @@ def test_list_attachments_rest_pager(transport: str = "rest"): pager = client.list_attachments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, attachment.Attachment) for i in results) diff --git a/packages/google-cloud-artifact-registry/tests/unit/gapic/artifactregistry_v1beta2/test_artifact_registry.py b/packages/google-cloud-artifact-registry/tests/unit/gapic/artifactregistry_v1beta2/test_artifact_registry.py index 1512454de4fd..0a8b9fbea7a8 100644 --- a/packages/google-cloud-artifact-registry/tests/unit/gapic/artifactregistry_v1beta2/test_artifact_registry.py +++ b/packages/google-cloud-artifact-registry/tests/unit/gapic/artifactregistry_v1beta2/test_artifact_registry.py @@ -2299,6 +2299,9 @@ def test_list_repositories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, repository.Repository) for i in results) @@ -2391,6 +2394,8 @@ async def test_list_repositories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4273,6 +4278,9 @@ def test_list_packages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, package.Package) for i in results) @@ -4361,6 +4369,8 @@ async def test_list_packages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5443,6 +5453,9 @@ def test_list_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) @@ -5531,6 +5544,8 @@ async def test_list_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6611,6 +6626,9 @@ def test_list_files_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, file.File) for i in results) @@ -6699,6 +6717,8 @@ async def test_list_files_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7453,6 +7473,9 @@ def test_list_tags_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag.Tag) for i in results) @@ -7541,6 +7564,8 @@ async def test_list_tags_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10750,6 +10775,9 @@ def test_list_repositories_rest_pager(transport: str = "rest"): pager = client.list_repositories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, repository.Repository) for i in results) @@ -11574,6 +11602,9 @@ def test_list_packages_rest_pager(transport: str = "rest"): pager = client.list_packages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, package.Package) for i in results) @@ -11927,6 +11958,9 @@ def test_list_versions_rest_pager(transport: str = "rest"): pager = client.list_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) @@ -12280,6 +12314,9 @@ def test_list_files_rest_pager(transport: str = "rest"): pager = client.list_files(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, file.File) for i in results) @@ -12535,6 +12572,9 @@ def test_list_tags_rest_pager(transport: str = "rest"): pager = client.list_tags(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag.Tag) for i in results) diff --git a/packages/google-cloud-asset/noxfile.py b/packages/google-cloud-asset/noxfile.py index b044cb25e9bd..0cb460c24ead 100644 --- a/packages/google-cloud-asset/noxfile.py +++ b/packages/google-cloud-asset/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-asset/testing/constraints-3.15.txt b/packages/google-cloud-asset/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f63842dab6f9 --- /dev/null +++ b/packages/google-cloud-asset/testing/constraints-3.15.txt @@ -0,0 +1,15 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-cloud-access-context-manager>=0 +google-cloud-os-config>=1 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-asset/tests/unit/gapic/asset_v1/test_asset_service.py b/packages/google-cloud-asset/tests/unit/gapic/asset_v1/test_asset_service.py index bc2a7924209e..8933e07d3819 100644 --- a/packages/google-cloud-asset/tests/unit/gapic/asset_v1/test_asset_service.py +++ b/packages/google-cloud-asset/tests/unit/gapic/asset_v1/test_asset_service.py @@ -1931,6 +1931,9 @@ def test_list_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assets.Asset) for i in results) @@ -2019,6 +2022,8 @@ async def test_list_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4378,6 +4383,9 @@ def test_search_all_resources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assets.ResourceSearchResult) for i in results) @@ -4470,6 +4478,8 @@ async def test_search_all_resources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4937,6 +4947,9 @@ def test_search_all_iam_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assets.IamPolicySearchResult) for i in results) @@ -5029,6 +5042,8 @@ async def test_search_all_iam_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7202,6 +7217,9 @@ def test_list_saved_queries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, asset_service.SavedQuery) for i in results) @@ -7294,6 +7312,8 @@ async def test_list_saved_queries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8713,6 +8733,9 @@ def test_analyze_org_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -8808,6 +8831,8 @@ async def test_analyze_org_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9290,6 +9315,9 @@ def test_analyze_org_policy_governed_containers_pager(transport_name: str = "grp assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -9388,6 +9416,8 @@ async def test_analyze_org_policy_governed_containers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9875,6 +9905,9 @@ def test_analyze_org_policy_governed_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -9972,6 +10005,8 @@ async def test_analyze_org_policy_governed_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10413,6 +10448,9 @@ def test_list_assets_rest_pager(transport: str = "rest"): pager = client.list_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assets.Asset) for i in results) @@ -11710,6 +11748,9 @@ def test_search_all_resources_rest_pager(transport: str = "rest"): pager = client.search_all_resources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assets.ResourceSearchResult) for i in results) @@ -11977,6 +12018,9 @@ def test_search_all_iam_policies_rest_pager(transport: str = "rest"): pager = client.search_all_iam_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assets.IamPolicySearchResult) for i in results) @@ -13164,6 +13208,9 @@ def test_list_saved_queries_rest_pager(transport: str = "rest"): pager = client.list_saved_queries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, asset_service.SavedQuery) for i in results) @@ -13966,6 +14013,9 @@ def test_analyze_org_policies_rest_pager(transport: str = "rest"): pager = client.analyze_org_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -14269,6 +14319,9 @@ def test_analyze_org_policy_governed_containers_rest_pager(transport: str = "res pager = client.analyze_org_policy_governed_containers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -14572,6 +14625,9 @@ def test_analyze_org_policy_governed_assets_rest_pager(transport: str = "rest"): pager = client.analyze_org_policy_governed_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-asset/tests/unit/gapic/asset_v1p1beta1/test_asset_service.py b/packages/google-cloud-asset/tests/unit/gapic/asset_v1p1beta1/test_asset_service.py index 66d15e9339dd..fda0e809b385 100644 --- a/packages/google-cloud-asset/tests/unit/gapic/asset_v1p1beta1/test_asset_service.py +++ b/packages/google-cloud-asset/tests/unit/gapic/asset_v1p1beta1/test_asset_service.py @@ -1722,6 +1722,9 @@ def test_search_all_resources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assets.StandardResourceMetadata) for i in results) @@ -1814,6 +1817,8 @@ async def test_search_all_resources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2279,6 +2284,9 @@ def test_search_all_iam_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assets.IamPolicySearchResult) for i in results) @@ -2371,6 +2379,8 @@ async def test_search_all_iam_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2686,6 +2696,9 @@ def test_search_all_resources_rest_pager(transport: str = "rest"): pager = client.search_all_resources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assets.StandardResourceMetadata) for i in results) @@ -2950,6 +2963,9 @@ def test_search_all_iam_policies_rest_pager(transport: str = "rest"): pager = client.search_all_iam_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assets.IamPolicySearchResult) for i in results) diff --git a/packages/google-cloud-asset/tests/unit/gapic/asset_v1p5beta1/test_asset_service.py b/packages/google-cloud-asset/tests/unit/gapic/asset_v1p5beta1/test_asset_service.py index c6784e98558a..c11a8e3960c8 100644 --- a/packages/google-cloud-asset/tests/unit/gapic/asset_v1p5beta1/test_asset_service.py +++ b/packages/google-cloud-asset/tests/unit/gapic/asset_v1p5beta1/test_asset_service.py @@ -1677,6 +1677,9 @@ def test_list_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assets.Asset) for i in results) @@ -1765,6 +1768,8 @@ async def test_list_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2065,6 +2070,9 @@ def test_list_assets_rest_pager(transport: str = "rest"): pager = client.list_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assets.Asset) for i in results) diff --git a/packages/google-cloud-assured-workloads/noxfile.py b/packages/google-cloud-assured-workloads/noxfile.py index a643c7d6ccd9..e33b34694fe6 100644 --- a/packages/google-cloud-assured-workloads/noxfile.py +++ b/packages/google-cloud-assured-workloads/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-assured-workloads/testing/constraints-3.15.txt b/packages/google-cloud-assured-workloads/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-assured-workloads/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-assured-workloads/tests/unit/gapic/assuredworkloads_v1/test_assured_workloads_service.py b/packages/google-cloud-assured-workloads/tests/unit/gapic/assuredworkloads_v1/test_assured_workloads_service.py index e50809bda64e..374c2dca38a3 100644 --- a/packages/google-cloud-assured-workloads/tests/unit/gapic/assuredworkloads_v1/test_assured_workloads_service.py +++ b/packages/google-cloud-assured-workloads/tests/unit/gapic/assuredworkloads_v1/test_assured_workloads_service.py @@ -3435,6 +3435,9 @@ def test_list_workloads_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assuredworkloads.Workload) for i in results) @@ -3523,6 +3526,8 @@ async def test_list_workloads_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3889,6 +3894,9 @@ def test_list_violations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assuredworkloads.Violation) for i in results) @@ -3977,6 +3985,8 @@ async def test_list_violations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5639,6 +5649,9 @@ def test_list_workloads_rest_pager(transport: str = "rest"): pager = client.list_workloads(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assuredworkloads.Workload) for i in results) diff --git a/packages/google-cloud-assured-workloads/tests/unit/gapic/assuredworkloads_v1beta1/test_assured_workloads_service.py b/packages/google-cloud-assured-workloads/tests/unit/gapic/assuredworkloads_v1beta1/test_assured_workloads_service.py index 45e4e5f269bb..72673da1c0dd 100644 --- a/packages/google-cloud-assured-workloads/tests/unit/gapic/assuredworkloads_v1beta1/test_assured_workloads_service.py +++ b/packages/google-cloud-assured-workloads/tests/unit/gapic/assuredworkloads_v1beta1/test_assured_workloads_service.py @@ -3531,6 +3531,9 @@ def test_list_workloads_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assuredworkloads.Workload) for i in results) @@ -3619,6 +3622,8 @@ async def test_list_workloads_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-auditmanager/noxfile.py b/packages/google-cloud-auditmanager/noxfile.py index 20b95fcccee0..7191314eb309 100644 --- a/packages/google-cloud-auditmanager/noxfile.py +++ b/packages/google-cloud-auditmanager/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-auditmanager/testing/constraints-3.15.txt b/packages/google-cloud-auditmanager/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-auditmanager/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-auditmanager/tests/unit/gapic/auditmanager_v1/test_audit_manager.py b/packages/google-cloud-auditmanager/tests/unit/gapic/auditmanager_v1/test_audit_manager.py index 9e473fcbb851..3d768321aefc 100644 --- a/packages/google-cloud-auditmanager/tests/unit/gapic/auditmanager_v1/test_audit_manager.py +++ b/packages/google-cloud-auditmanager/tests/unit/gapic/auditmanager_v1/test_audit_manager.py @@ -2811,6 +2811,9 @@ def test_list_audit_reports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, auditmanager.AuditReport) for i in results) @@ -2903,6 +2906,8 @@ async def test_list_audit_reports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4077,6 +4082,9 @@ def test_list_resource_enrollment_statuses_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4171,6 +4179,8 @@ async def test_list_resource_enrollment_statuses_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4605,6 +4615,9 @@ def test_list_controls_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, auditmanager.Control) for i in results) @@ -4693,6 +4706,8 @@ async def test_list_controls_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5606,6 +5621,9 @@ def test_list_audit_reports_rest_pager(transport: str = "rest"): pager = client.list_audit_reports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, auditmanager.AuditReport) for i in results) @@ -6245,6 +6263,9 @@ def test_list_resource_enrollment_statuses_rest_pager(transport: str = "rest"): pager = client.list_resource_enrollment_statuses(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6507,6 +6528,9 @@ def test_list_controls_rest_pager(transport: str = "rest"): pager = client.list_controls(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, auditmanager.Control) for i in results) diff --git a/packages/google-cloud-automl/noxfile.py b/packages/google-cloud-automl/noxfile.py index a819955ec879..f32d73b9e2df 100644 --- a/packages/google-cloud-automl/noxfile.py +++ b/packages/google-cloud-automl/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -108,6 +116,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -567,7 +576,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-automl/testing/constraints-3.15.txt b/packages/google-cloud-automl/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-automl/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-automl/tests/unit/gapic/automl_v1/test_auto_ml.py b/packages/google-cloud-automl/tests/unit/gapic/automl_v1/test_auto_ml.py index fdc28635d68a..c6fea4ae1759 100644 --- a/packages/google-cloud-automl/tests/unit/gapic/automl_v1/test_auto_ml.py +++ b/packages/google-cloud-automl/tests/unit/gapic/automl_v1/test_auto_ml.py @@ -2352,6 +2352,9 @@ def test_list_datasets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataset.Dataset) for i in results) @@ -2440,6 +2443,8 @@ async def test_list_datasets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5322,6 +5327,9 @@ def test_list_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -5410,6 +5418,8 @@ async def test_list_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7941,6 +7951,9 @@ def test_list_model_evaluations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model_evaluation.ModelEvaluation) for i in results) @@ -8033,6 +8046,8 @@ async def test_list_model_evaluations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8700,6 +8715,9 @@ def test_list_datasets_rest_pager(transport: str = "rest"): pager = client.list_datasets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataset.Dataset) for i in results) @@ -10257,6 +10275,9 @@ def test_list_models_rest_pager(transport: str = "rest"): pager = client.list_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -11638,6 +11659,9 @@ def test_list_model_evaluations_rest_pager(transport: str = "rest"): pager = client.list_model_evaluations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model_evaluation.ModelEvaluation) for i in results) diff --git a/packages/google-cloud-automl/tests/unit/gapic/automl_v1beta1/test_auto_ml.py b/packages/google-cloud-automl/tests/unit/gapic/automl_v1beta1/test_auto_ml.py index 955fbaec3f85..a746c598064e 100644 --- a/packages/google-cloud-automl/tests/unit/gapic/automl_v1beta1/test_auto_ml.py +++ b/packages/google-cloud-automl/tests/unit/gapic/automl_v1beta1/test_auto_ml.py @@ -2369,6 +2369,9 @@ def test_list_datasets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataset.Dataset) for i in results) @@ -2457,6 +2460,8 @@ async def test_list_datasets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4979,6 +4984,9 @@ def test_list_table_specs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, table_spec.TableSpec) for i in results) @@ -5067,6 +5075,8 @@ async def test_list_table_specs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6203,6 +6213,9 @@ def test_list_column_specs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, column_spec.ColumnSpec) for i in results) @@ -6295,6 +6308,8 @@ async def test_list_column_specs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7765,6 +7780,9 @@ def test_list_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -7853,6 +7871,8 @@ async def test_list_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10387,6 +10407,9 @@ def test_list_model_evaluations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model_evaluation.ModelEvaluation) for i in results) @@ -10479,6 +10502,8 @@ async def test_list_model_evaluations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11150,6 +11175,9 @@ def test_list_datasets_rest_pager(transport: str = "rest"): pager = client.list_datasets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataset.Dataset) for i in results) @@ -12521,6 +12549,9 @@ def test_list_table_specs_rest_pager(transport: str = "rest"): pager = client.list_table_specs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, table_spec.TableSpec) for i in results) @@ -13149,6 +13180,9 @@ def test_list_column_specs_rest_pager(transport: str = "rest"): pager = client.list_column_specs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, column_spec.ColumnSpec) for i in results) @@ -13957,6 +13991,9 @@ def test_list_models_rest_pager(transport: str = "rest"): pager = client.list_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -15326,6 +15363,9 @@ def test_list_model_evaluations_rest_pager(transport: str = "rest"): pager = client.list_model_evaluations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model_evaluation.ModelEvaluation) for i in results) diff --git a/packages/google-cloud-backupdr/noxfile.py b/packages/google-cloud-backupdr/noxfile.py index 6a226a08584d..dd9d71995455 100644 --- a/packages/google-cloud-backupdr/noxfile.py +++ b/packages/google-cloud-backupdr/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-backupdr/testing/constraints-3.15.txt b/packages/google-cloud-backupdr/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-backupdr/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-backupdr/tests/unit/gapic/backupdr_v1/test_backup_dr.py b/packages/google-cloud-backupdr/tests/unit/gapic/backupdr_v1/test_backup_dr.py index 6ebeb9c24e6d..ee629e0cb3ee 100644 --- a/packages/google-cloud-backupdr/tests/unit/gapic/backupdr_v1/test_backup_dr.py +++ b/packages/google-cloud-backupdr/tests/unit/gapic/backupdr_v1/test_backup_dr.py @@ -1701,6 +1701,9 @@ def test_list_management_servers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupdr.ManagementServer) for i in results) @@ -1793,6 +1796,8 @@ async def test_list_management_servers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3716,6 +3721,9 @@ def test_list_backup_vaults_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupvault.BackupVault) for i in results) @@ -3808,6 +3816,8 @@ async def test_list_backup_vaults_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4271,6 +4281,9 @@ def test_fetch_usable_backup_vaults_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupvault.BackupVault) for i in results) @@ -4363,6 +4376,8 @@ async def test_fetch_usable_backup_vaults_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5897,6 +5912,9 @@ def test_list_data_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupvault.DataSource) for i in results) @@ -5989,6 +6007,8 @@ async def test_list_data_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7127,6 +7147,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupvault.Backup) for i in results) @@ -7215,6 +7238,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7684,6 +7709,9 @@ def test_fetch_backups_for_resource_type_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupvault.Backup) for i in results) @@ -7776,6 +7804,8 @@ async def test_fetch_backups_for_resource_type_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10668,6 +10698,9 @@ def test_list_backup_plans_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupplan.BackupPlan) for i in results) @@ -10760,6 +10793,8 @@ async def test_list_backup_plans_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11918,6 +11953,9 @@ def test_list_backup_plan_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupplan.BackupPlanRevision) for i in results) @@ -12010,6 +12048,8 @@ async def test_list_backup_plan_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13586,6 +13626,9 @@ def test_list_backup_plan_associations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -13680,6 +13723,8 @@ async def test_list_backup_plan_associations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14186,6 +14231,9 @@ def test_fetch_backup_plan_associations_for_resource_type_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -14285,6 +14333,8 @@ async def test_fetch_backup_plan_associations_for_resource_type_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15807,6 +15857,9 @@ def test_list_data_source_references_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -15901,6 +15954,8 @@ async def test_list_data_source_references_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16398,6 +16453,9 @@ def test_fetch_data_source_references_for_resource_type_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -16497,6 +16555,8 @@ async def test_fetch_data_source_references_for_resource_type_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17074,6 +17134,9 @@ def test_list_management_servers_rest_pager(transport: str = "rest"): pager = client.list_management_servers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupdr.ManagementServer) for i in results) @@ -18156,6 +18219,9 @@ def test_list_backup_vaults_rest_pager(transport: str = "rest"): pager = client.list_backup_vaults(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupvault.BackupVault) for i in results) @@ -18421,6 +18487,9 @@ def test_fetch_usable_backup_vaults_rest_pager(transport: str = "rest"): pager = client.fetch_usable_backup_vaults(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupvault.BackupVault) for i in results) @@ -19286,6 +19355,9 @@ def test_list_data_sources_rest_pager(transport: str = "rest"): pager = client.list_data_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupvault.DataSource) for i in results) @@ -19933,6 +20005,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupvault.Backup) for i in results) @@ -20230,6 +20305,9 @@ def test_fetch_backups_for_resource_type_rest_pager(transport: str = "rest"): pager = client.fetch_backups_for_resource_type(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupvault.Backup) for i in results) @@ -21837,6 +21915,9 @@ def test_list_backup_plans_rest_pager(transport: str = "rest"): pager = client.list_backup_plans(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupplan.BackupPlan) for i in results) @@ -22472,6 +22553,9 @@ def test_list_backup_plan_revisions_rest_pager(transport: str = "rest"): pager = client.list_backup_plan_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backupplan.BackupPlanRevision) for i in results) @@ -23370,6 +23454,9 @@ def test_list_backup_plan_associations_rest_pager(transport: str = "rest"): pager = client.list_backup_plan_associations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -23684,6 +23771,9 @@ def test_fetch_backup_plan_associations_for_resource_type_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -24527,6 +24617,9 @@ def test_list_data_source_references_rest_pager(transport: str = "rest"): pager = client.list_data_source_references(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -24843,6 +24936,9 @@ def test_fetch_data_source_references_for_resource_type_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-backupdr/tests/unit/gapic/backupdr_v1/test_backup_dr_protection_summary.py b/packages/google-cloud-backupdr/tests/unit/gapic/backupdr_v1/test_backup_dr_protection_summary.py index 94946da1710a..10f2c2ef8281 100644 --- a/packages/google-cloud-backupdr/tests/unit/gapic/backupdr_v1/test_backup_dr_protection_summary.py +++ b/packages/google-cloud-backupdr/tests/unit/gapic/backupdr_v1/test_backup_dr_protection_summary.py @@ -1813,6 +1813,9 @@ def test_list_resource_backup_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1907,6 +1910,8 @@ async def test_list_resource_backup_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2227,6 +2232,9 @@ def test_list_resource_backup_configs_rest_pager(transport: str = "rest"): pager = client.list_resource_backup_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-bare-metal-solution/noxfile.py b/packages/google-cloud-bare-metal-solution/noxfile.py index ff32011b2c06..75967570941e 100644 --- a/packages/google-cloud-bare-metal-solution/noxfile.py +++ b/packages/google-cloud-bare-metal-solution/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-bare-metal-solution/testing/constraints-3.15.txt b/packages/google-cloud-bare-metal-solution/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-bare-metal-solution/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-bare-metal-solution/tests/unit/gapic/bare_metal_solution_v2/test_bare_metal_solution.py b/packages/google-cloud-bare-metal-solution/tests/unit/gapic/bare_metal_solution_v2/test_bare_metal_solution.py index 0ac50ff64557..e221e66a169c 100644 --- a/packages/google-cloud-bare-metal-solution/tests/unit/gapic/bare_metal_solution_v2/test_bare_metal_solution.py +++ b/packages/google-cloud-bare-metal-solution/tests/unit/gapic/bare_metal_solution_v2/test_bare_metal_solution.py @@ -1776,6 +1776,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) @@ -1864,6 +1867,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5386,6 +5391,9 @@ def test_list_ssh_keys_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, ssh_key.SSHKey) for i in results) @@ -5474,6 +5482,8 @@ async def test_list_ssh_keys_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6566,6 +6576,9 @@ def test_list_volumes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, volume.Volume) for i in results) @@ -6654,6 +6667,8 @@ async def test_list_volumes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8922,6 +8937,9 @@ def test_list_networks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, network.Network) for i in results) @@ -9010,6 +9028,8 @@ async def test_list_networks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11910,6 +11930,9 @@ def test_list_volume_snapshots_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, volume_snapshot.VolumeSnapshot) for i in results) @@ -12002,6 +12025,8 @@ async def test_list_volume_snapshots_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12792,6 +12817,9 @@ def test_list_luns_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lun.Lun) for i in results) @@ -12880,6 +12908,8 @@ async def test_list_luns_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13984,6 +14014,9 @@ def test_list_nfs_shares_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, nfs_share.NfsShare) for i in results) @@ -14072,6 +14105,8 @@ async def test_list_nfs_shares_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15889,6 +15924,9 @@ def test_list_provisioning_quotas_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, provisioning.ProvisioningQuota) for i in results) @@ -15981,6 +16019,8 @@ async def test_list_provisioning_quotas_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18303,6 +18343,9 @@ def test_list_os_images_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, osimage.OSImage) for i in results) @@ -18391,6 +18434,8 @@ async def test_list_os_images_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18690,6 +18735,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) @@ -20600,6 +20648,9 @@ def test_list_ssh_keys_rest_pager(transport: str = "rest"): pager = client.list_ssh_keys(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, ssh_key.SSHKey) for i in results) @@ -21229,6 +21280,9 @@ def test_list_volumes_rest_pager(transport: str = "rest"): pager = client.list_volumes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, volume.Volume) for i in results) @@ -22385,6 +22439,9 @@ def test_list_networks_rest_pager(transport: str = "rest"): pager = client.list_networks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, network.Network) for i in results) @@ -23931,6 +23988,9 @@ def test_list_volume_snapshots_rest_pager(transport: str = "rest"): pager = client.list_volume_snapshots(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, volume_snapshot.VolumeSnapshot) for i in results) @@ -24365,6 +24425,9 @@ def test_list_luns_rest_pager(transport: str = "rest"): pager = client.list_luns(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lun.Lun) for i in results) @@ -24975,6 +25038,9 @@ def test_list_nfs_shares_rest_pager(transport: str = "rest"): pager = client.list_nfs_shares(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, nfs_share.NfsShare) for i in results) @@ -25985,6 +26051,9 @@ def test_list_provisioning_quotas_rest_pager(transport: str = "rest"): pager = client.list_provisioning_quotas(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, provisioning.ProvisioningQuota) for i in results) @@ -27209,6 +27278,9 @@ def test_list_os_images_rest_pager(transport: str = "rest"): pager = client.list_os_images(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, osimage.OSImage) for i in results) diff --git a/packages/google-cloud-batch/noxfile.py b/packages/google-cloud-batch/noxfile.py index 976947da12cf..974f8d3ec051 100644 --- a/packages/google-cloud-batch/noxfile.py +++ b/packages/google-cloud-batch/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-batch/testing/constraints-3.15.txt b/packages/google-cloud-batch/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-batch/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-batch/tests/unit/gapic/batch_v1/test_batch_service.py b/packages/google-cloud-batch/tests/unit/gapic/batch_v1/test_batch_service.py index a90616d74217..e140b6bd2034 100644 --- a/packages/google-cloud-batch/tests/unit/gapic/batch_v1/test_batch_service.py +++ b/packages/google-cloud-batch/tests/unit/gapic/batch_v1/test_batch_service.py @@ -3023,6 +3023,9 @@ def test_list_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) @@ -3111,6 +3114,8 @@ async def test_list_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3861,6 +3866,9 @@ def test_list_tasks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, task.Task) for i in results) @@ -3949,6 +3957,8 @@ async def test_list_tasks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4793,6 +4803,9 @@ def test_list_jobs_rest_pager(transport: str = "rest"): pager = client.list_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) @@ -5229,6 +5242,9 @@ def test_list_tasks_rest_pager(transport: str = "rest"): pager = client.list_tasks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, task.Task) for i in results) diff --git a/packages/google-cloud-batch/tests/unit/gapic/batch_v1alpha/test_batch_service.py b/packages/google-cloud-batch/tests/unit/gapic/batch_v1alpha/test_batch_service.py index 3ab382b78c0c..b452f770aacc 100644 --- a/packages/google-cloud-batch/tests/unit/gapic/batch_v1alpha/test_batch_service.py +++ b/packages/google-cloud-batch/tests/unit/gapic/batch_v1alpha/test_batch_service.py @@ -3387,6 +3387,9 @@ def test_list_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) @@ -3475,6 +3478,8 @@ async def test_list_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4227,6 +4232,9 @@ def test_list_tasks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, task.Task) for i in results) @@ -4315,6 +4323,8 @@ async def test_list_tasks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5879,6 +5889,9 @@ def test_list_resource_allowances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource_allowance.ResourceAllowance) for i in results) @@ -5971,6 +5984,8 @@ async def test_list_resource_allowances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7406,6 +7421,9 @@ def test_list_jobs_rest_pager(transport: str = "rest"): pager = client.list_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) @@ -7844,6 +7862,9 @@ def test_list_tasks_rest_pager(transport: str = "rest"): pager = client.list_tasks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, task.Task) for i in results) @@ -8709,6 +8730,9 @@ def test_list_resource_allowances_rest_pager(transport: str = "rest"): pager = client.list_resource_allowances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource_allowance.ResourceAllowance) for i in results) diff --git a/packages/google-cloud-beyondcorp-appconnections/noxfile.py b/packages/google-cloud-beyondcorp-appconnections/noxfile.py index b4957d8a7c4b..e7129260df72 100644 --- a/packages/google-cloud-beyondcorp-appconnections/noxfile.py +++ b/packages/google-cloud-beyondcorp-appconnections/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-beyondcorp-appconnections/testing/constraints-3.15.txt b/packages/google-cloud-beyondcorp-appconnections/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-beyondcorp-appconnections/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-beyondcorp-appconnections/tests/unit/gapic/beyondcorp_appconnections_v1/test_app_connections_service.py b/packages/google-cloud-beyondcorp-appconnections/tests/unit/gapic/beyondcorp_appconnections_v1/test_app_connections_service.py index 234810b9f5ab..53f05799ada5 100644 --- a/packages/google-cloud-beyondcorp-appconnections/tests/unit/gapic/beyondcorp_appconnections_v1/test_app_connections_service.py +++ b/packages/google-cloud-beyondcorp-appconnections/tests/unit/gapic/beyondcorp_appconnections_v1/test_app_connections_service.py @@ -1804,6 +1804,9 @@ def test_list_app_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1898,6 +1901,8 @@ async def test_list_app_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3804,6 +3809,9 @@ def test_resolve_app_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3902,6 +3910,8 @@ async def test_resolve_app_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4223,6 +4233,9 @@ def test_list_app_connections_rest_pager(transport: str = "rest"): pager = client.list_app_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5311,6 +5324,9 @@ def test_resolve_app_connections_rest_pager(transport: str = "rest"): pager = client.resolve_app_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-beyondcorp-appconnectors/noxfile.py b/packages/google-cloud-beyondcorp-appconnectors/noxfile.py index 7b8f48b26a26..4ae7de4d3010 100644 --- a/packages/google-cloud-beyondcorp-appconnectors/noxfile.py +++ b/packages/google-cloud-beyondcorp-appconnectors/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-beyondcorp-appconnectors/testing/constraints-3.15.txt b/packages/google-cloud-beyondcorp-appconnectors/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-beyondcorp-appconnectors/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-beyondcorp-appconnectors/tests/unit/gapic/beyondcorp_appconnectors_v1/test_app_connectors_service.py b/packages/google-cloud-beyondcorp-appconnectors/tests/unit/gapic/beyondcorp_appconnectors_v1/test_app_connectors_service.py index e8474beccbcd..e2aa267cabca 100644 --- a/packages/google-cloud-beyondcorp-appconnectors/tests/unit/gapic/beyondcorp_appconnectors_v1/test_app_connectors_service.py +++ b/packages/google-cloud-beyondcorp-appconnectors/tests/unit/gapic/beyondcorp_appconnectors_v1/test_app_connectors_service.py @@ -1807,6 +1807,9 @@ def test_list_app_connectors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app_connectors_service.AppConnector) for i in results) @@ -1899,6 +1902,8 @@ async def test_list_app_connectors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3986,6 +3991,9 @@ def test_list_app_connectors_rest_pager(transport: str = "rest"): pager = client.list_app_connectors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app_connectors_service.AppConnector) for i in results) diff --git a/packages/google-cloud-beyondcorp-appgateways/noxfile.py b/packages/google-cloud-beyondcorp-appgateways/noxfile.py index dd399e3a0da4..9a46e86cced9 100644 --- a/packages/google-cloud-beyondcorp-appgateways/noxfile.py +++ b/packages/google-cloud-beyondcorp-appgateways/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-beyondcorp-appgateways/testing/constraints-3.15.txt b/packages/google-cloud-beyondcorp-appgateways/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-beyondcorp-appgateways/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-beyondcorp-appgateways/tests/unit/gapic/beyondcorp_appgateways_v1/test_app_gateways_service.py b/packages/google-cloud-beyondcorp-appgateways/tests/unit/gapic/beyondcorp_appgateways_v1/test_app_gateways_service.py index 2e27d071262c..18a3b05ac8a2 100644 --- a/packages/google-cloud-beyondcorp-appgateways/tests/unit/gapic/beyondcorp_appgateways_v1/test_app_gateways_service.py +++ b/packages/google-cloud-beyondcorp-appgateways/tests/unit/gapic/beyondcorp_appgateways_v1/test_app_gateways_service.py @@ -1779,6 +1779,9 @@ def test_list_app_gateways_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app_gateways_service.AppGateway) for i in results) @@ -1871,6 +1874,8 @@ async def test_list_app_gateways_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3249,6 +3254,9 @@ def test_list_app_gateways_rest_pager(transport: str = "rest"): pager = client.list_app_gateways(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app_gateways_service.AppGateway) for i in results) diff --git a/packages/google-cloud-beyondcorp-clientconnectorservices/noxfile.py b/packages/google-cloud-beyondcorp-clientconnectorservices/noxfile.py index 60ca6ca1fcb1..dad690197194 100644 --- a/packages/google-cloud-beyondcorp-clientconnectorservices/noxfile.py +++ b/packages/google-cloud-beyondcorp-clientconnectorservices/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-beyondcorp-clientconnectorservices/testing/constraints-3.15.txt b/packages/google-cloud-beyondcorp-clientconnectorservices/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-beyondcorp-clientconnectorservices/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-beyondcorp-clientconnectorservices/tests/unit/gapic/beyondcorp_clientconnectorservices_v1/test_client_connector_services_service.py b/packages/google-cloud-beyondcorp-clientconnectorservices/tests/unit/gapic/beyondcorp_clientconnectorservices_v1/test_client_connector_services_service.py index 89d119e5c252..01fbbd840431 100644 --- a/packages/google-cloud-beyondcorp-clientconnectorservices/tests/unit/gapic/beyondcorp_clientconnectorservices_v1/test_client_connector_services_service.py +++ b/packages/google-cloud-beyondcorp-clientconnectorservices/tests/unit/gapic/beyondcorp_clientconnectorservices_v1/test_client_connector_services_service.py @@ -1882,6 +1882,9 @@ def test_list_client_connector_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1977,6 +1980,8 @@ async def test_list_client_connector_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3798,6 +3803,9 @@ def test_list_client_connector_services_rest_pager(transport: str = "rest"): pager = client.list_client_connector_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-beyondcorp-clientgateways/noxfile.py b/packages/google-cloud-beyondcorp-clientgateways/noxfile.py index b97d73b7ebe9..33df0159daf5 100644 --- a/packages/google-cloud-beyondcorp-clientgateways/noxfile.py +++ b/packages/google-cloud-beyondcorp-clientgateways/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-beyondcorp-clientgateways/testing/constraints-3.15.txt b/packages/google-cloud-beyondcorp-clientgateways/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-beyondcorp-clientgateways/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-beyondcorp-clientgateways/tests/unit/gapic/beyondcorp_clientgateways_v1/test_client_gateways_service.py b/packages/google-cloud-beyondcorp-clientgateways/tests/unit/gapic/beyondcorp_clientgateways_v1/test_client_gateways_service.py index e341c3b08e0e..948fcf7f0925 100644 --- a/packages/google-cloud-beyondcorp-clientgateways/tests/unit/gapic/beyondcorp_clientgateways_v1/test_client_gateways_service.py +++ b/packages/google-cloud-beyondcorp-clientgateways/tests/unit/gapic/beyondcorp_clientgateways_v1/test_client_gateways_service.py @@ -1803,6 +1803,9 @@ def test_list_client_gateways_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1897,6 +1900,8 @@ async def test_list_client_gateways_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3292,6 +3297,9 @@ def test_list_client_gateways_rest_pager(transport: str = "rest"): pager = client.list_client_gateways(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-biglake-hive/noxfile.py b/packages/google-cloud-biglake-hive/noxfile.py index 77c7118d3dfd..496ef0890e90 100644 --- a/packages/google-cloud-biglake-hive/noxfile.py +++ b/packages/google-cloud-biglake-hive/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-biglake-hive/testing/constraints-3.15.txt b/packages/google-cloud-biglake-hive/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-biglake-hive/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-biglake-hive/tests/unit/gapic/biglake_hive_v1beta/test_hive_metastore_service.py b/packages/google-cloud-biglake-hive/tests/unit/gapic/biglake_hive_v1beta/test_hive_metastore_service.py index 90081caf667f..96a803b6d78c 100644 --- a/packages/google-cloud-biglake-hive/tests/unit/gapic/biglake_hive_v1beta/test_hive_metastore_service.py +++ b/packages/google-cloud-biglake-hive/tests/unit/gapic/biglake_hive_v1beta/test_hive_metastore_service.py @@ -2495,6 +2495,9 @@ def test_list_hive_catalogs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hive_metastore.HiveCatalog) for i in results) @@ -2587,6 +2590,8 @@ async def test_list_hive_catalogs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4445,6 +4450,9 @@ def test_list_hive_databases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hive_metastore.HiveDatabase) for i in results) @@ -4537,6 +4545,8 @@ async def test_list_hive_databases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6361,6 +6371,9 @@ def test_list_hive_tables_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hive_metastore.HiveTable) for i in results) @@ -6449,6 +6462,8 @@ async def test_list_hive_tables_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9178,6 +9193,9 @@ def test_list_hive_catalogs_rest_pager(transport: str = "rest"): pager = client.list_hive_catalogs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hive_metastore.HiveCatalog) for i in results) @@ -10187,6 +10205,9 @@ def test_list_hive_databases_rest_pager(transport: str = "rest"): pager = client.list_hive_databases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hive_metastore.HiveDatabase) for i in results) @@ -11203,6 +11224,9 @@ def test_list_hive_tables_rest_pager(transport: str = "rest"): pager = client.list_hive_tables(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hive_metastore.HiveTable) for i in results) diff --git a/packages/google-cloud-biglake/noxfile.py b/packages/google-cloud-biglake/noxfile.py index 1ebc50a53211..540e724f0676 100644 --- a/packages/google-cloud-biglake/noxfile.py +++ b/packages/google-cloud-biglake/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-biglake/testing/constraints-3.15.txt b/packages/google-cloud-biglake/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-biglake/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-biglake/tests/unit/gapic/biglake_v1/test_iceberg_catalog_service.py b/packages/google-cloud-biglake/tests/unit/gapic/biglake_v1/test_iceberg_catalog_service.py index 78612c605685..4beb895cbd01 100644 --- a/packages/google-cloud-biglake/tests/unit/gapic/biglake_v1/test_iceberg_catalog_service.py +++ b/packages/google-cloud-biglake/tests/unit/gapic/biglake_v1/test_iceberg_catalog_service.py @@ -2183,6 +2183,9 @@ def test_list_iceberg_catalogs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, iceberg_rest_catalog.IcebergCatalog) for i in results) @@ -2275,6 +2278,8 @@ async def test_list_iceberg_catalogs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3944,6 +3949,9 @@ def test_list_iceberg_catalogs_rest_pager(transport: str = "rest"): pager = client.list_iceberg_catalogs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, iceberg_rest_catalog.IcebergCatalog) for i in results) diff --git a/packages/google-cloud-bigquery-analyticshub/noxfile.py b/packages/google-cloud-bigquery-analyticshub/noxfile.py index be6693d95ee7..f9ba5b84ced9 100644 --- a/packages/google-cloud-bigquery-analyticshub/noxfile.py +++ b/packages/google-cloud-bigquery-analyticshub/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-bigquery-analyticshub/testing/constraints-3.15.txt b/packages/google-cloud-bigquery-analyticshub/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-bigquery-analyticshub/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-bigquery-analyticshub/tests/unit/gapic/bigquery_analyticshub_v1/test_analytics_hub_service.py b/packages/google-cloud-bigquery-analyticshub/tests/unit/gapic/bigquery_analyticshub_v1/test_analytics_hub_service.py index b20f9ebd2ed6..750abf6c0e1e 100644 --- a/packages/google-cloud-bigquery-analyticshub/tests/unit/gapic/bigquery_analyticshub_v1/test_analytics_hub_service.py +++ b/packages/google-cloud-bigquery-analyticshub/tests/unit/gapic/bigquery_analyticshub_v1/test_analytics_hub_service.py @@ -1752,6 +1752,9 @@ def test_list_data_exchanges_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, analyticshub.DataExchange) for i in results) @@ -1844,6 +1847,8 @@ async def test_list_data_exchanges_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2297,6 +2302,9 @@ def test_list_org_data_exchanges_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, analyticshub.DataExchange) for i in results) @@ -2389,6 +2397,8 @@ async def test_list_org_data_exchanges_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4293,6 +4303,9 @@ def test_list_listings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, analyticshub.Listing) for i in results) @@ -4381,6 +4394,8 @@ async def test_list_listings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7713,6 +7728,9 @@ def test_list_subscriptions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, analyticshub.Subscription) for i in results) @@ -7805,6 +7823,8 @@ async def test_list_subscriptions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8260,6 +8280,9 @@ def test_list_shared_resource_subscriptions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, analyticshub.Subscription) for i in results) @@ -8352,6 +8375,8 @@ async def test_list_shared_resource_subscriptions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11045,6 +11070,9 @@ def test_list_query_templates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, analyticshub.QueryTemplate) for i in results) @@ -11137,6 +11165,8 @@ async def test_list_query_templates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-bigquery-biglake/noxfile.py b/packages/google-cloud-bigquery-biglake/noxfile.py index 0e743d519c6b..cefd4b2553e8 100644 --- a/packages/google-cloud-bigquery-biglake/noxfile.py +++ b/packages/google-cloud-bigquery-biglake/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-bigquery-biglake/testing/constraints-3.15.txt b/packages/google-cloud-bigquery-biglake/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-bigquery-biglake/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-bigquery-biglake/tests/unit/gapic/bigquery_biglake_v1/test_metastore_service.py b/packages/google-cloud-bigquery-biglake/tests/unit/gapic/bigquery_biglake_v1/test_metastore_service.py index 8a088f78416b..f7dc28ad0e6a 100644 --- a/packages/google-cloud-bigquery-biglake/tests/unit/gapic/bigquery_biglake_v1/test_metastore_service.py +++ b/packages/google-cloud-bigquery-biglake/tests/unit/gapic/bigquery_biglake_v1/test_metastore_service.py @@ -2715,6 +2715,9 @@ def test_list_catalogs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Catalog) for i in results) @@ -2803,6 +2806,8 @@ async def test_list_catalogs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4603,6 +4608,9 @@ def test_list_databases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Database) for i in results) @@ -4691,6 +4699,8 @@ async def test_list_databases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6845,6 +6855,9 @@ def test_list_tables_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Table) for i in results) @@ -6933,6 +6946,8 @@ async def test_list_tables_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7786,6 +7801,9 @@ def test_list_catalogs_rest_pager(transport: str = "rest"): pager = client.list_catalogs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Catalog) for i in results) @@ -8809,6 +8827,9 @@ def test_list_databases_rest_pager(transport: str = "rest"): pager = client.list_databases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Database) for i in results) @@ -10019,6 +10040,9 @@ def test_list_tables_rest_pager(transport: str = "rest"): pager = client.list_tables(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Table) for i in results) diff --git a/packages/google-cloud-bigquery-biglake/tests/unit/gapic/bigquery_biglake_v1alpha1/test_metastore_service.py b/packages/google-cloud-bigquery-biglake/tests/unit/gapic/bigquery_biglake_v1alpha1/test_metastore_service.py index 7acd5d2c069f..e08016cfbfef 100644 --- a/packages/google-cloud-bigquery-biglake/tests/unit/gapic/bigquery_biglake_v1alpha1/test_metastore_service.py +++ b/packages/google-cloud-bigquery-biglake/tests/unit/gapic/bigquery_biglake_v1alpha1/test_metastore_service.py @@ -2715,6 +2715,9 @@ def test_list_catalogs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Catalog) for i in results) @@ -2803,6 +2806,8 @@ async def test_list_catalogs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4603,6 +4608,9 @@ def test_list_databases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Database) for i in results) @@ -4691,6 +4699,8 @@ async def test_list_databases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6845,6 +6855,9 @@ def test_list_tables_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Table) for i in results) @@ -6933,6 +6946,8 @@ async def test_list_tables_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8337,6 +8352,9 @@ def test_list_locks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Lock) for i in results) @@ -8425,6 +8443,8 @@ async def test_list_locks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9282,6 +9302,9 @@ def test_list_catalogs_rest_pager(transport: str = "rest"): pager = client.list_catalogs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Catalog) for i in results) @@ -10305,6 +10328,9 @@ def test_list_databases_rest_pager(transport: str = "rest"): pager = client.list_databases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Database) for i in results) @@ -11515,6 +11541,9 @@ def test_list_tables_rest_pager(transport: str = "rest"): pager = client.list_tables(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Table) for i in results) @@ -12312,6 +12341,9 @@ def test_list_locks_rest_pager(transport: str = "rest"): pager = client.list_locks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Lock) for i in results) diff --git a/packages/google-cloud-bigquery-connection/noxfile.py b/packages/google-cloud-bigquery-connection/noxfile.py index b6a28dbb4efc..b575960bebb7 100644 --- a/packages/google-cloud-bigquery-connection/noxfile.py +++ b/packages/google-cloud-bigquery-connection/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-bigquery-connection/testing/constraints-3.15.txt b/packages/google-cloud-bigquery-connection/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-bigquery-connection/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-bigquery-connection/tests/unit/gapic/bigquery_connection_v1/test_connection_service.py b/packages/google-cloud-bigquery-connection/tests/unit/gapic/bigquery_connection_v1/test_connection_service.py index 7d9bc4b58fe0..055b7b33e49c 100644 --- a/packages/google-cloud-bigquery-connection/tests/unit/gapic/bigquery_connection_v1/test_connection_service.py +++ b/packages/google-cloud-bigquery-connection/tests/unit/gapic/bigquery_connection_v1/test_connection_service.py @@ -2473,6 +2473,9 @@ def test_list_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, connection.Connection) for i in results) @@ -2561,6 +2564,8 @@ async def test_list_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5020,6 +5025,9 @@ def test_list_connections_rest_pager(transport: str = "rest"): pager = client.list_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, connection.Connection) for i in results) diff --git a/packages/google-cloud-bigquery-data-exchange/noxfile.py b/packages/google-cloud-bigquery-data-exchange/noxfile.py index fb619fb7bb1a..cea785be2fec 100644 --- a/packages/google-cloud-bigquery-data-exchange/noxfile.py +++ b/packages/google-cloud-bigquery-data-exchange/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-bigquery-data-exchange/testing/constraints-3.15.txt b/packages/google-cloud-bigquery-data-exchange/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-bigquery-data-exchange/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-bigquery-data-exchange/tests/unit/gapic/bigquery_data_exchange_v1beta1/test_analytics_hub_service.py b/packages/google-cloud-bigquery-data-exchange/tests/unit/gapic/bigquery_data_exchange_v1beta1/test_analytics_hub_service.py index c6aa08396a6b..38c919be040a 100644 --- a/packages/google-cloud-bigquery-data-exchange/tests/unit/gapic/bigquery_data_exchange_v1beta1/test_analytics_hub_service.py +++ b/packages/google-cloud-bigquery-data-exchange/tests/unit/gapic/bigquery_data_exchange_v1beta1/test_analytics_hub_service.py @@ -1745,6 +1745,9 @@ def test_list_data_exchanges_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataexchange.DataExchange) for i in results) @@ -1837,6 +1840,8 @@ async def test_list_data_exchanges_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2290,6 +2295,9 @@ def test_list_org_data_exchanges_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataexchange.DataExchange) for i in results) @@ -2382,6 +2390,8 @@ async def test_list_org_data_exchanges_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4262,6 +4272,9 @@ def test_list_listings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataexchange.Listing) for i in results) @@ -4350,6 +4363,8 @@ async def test_list_listings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-bigquery-datapolicies/noxfile.py b/packages/google-cloud-bigquery-datapolicies/noxfile.py index aabe19bd4e27..14d22beb94ec 100644 --- a/packages/google-cloud-bigquery-datapolicies/noxfile.py +++ b/packages/google-cloud-bigquery-datapolicies/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-bigquery-datapolicies/testing/constraints-3.15.txt b/packages/google-cloud-bigquery-datapolicies/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-bigquery-datapolicies/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v1/test_data_policy_service.py b/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v1/test_data_policy_service.py index ecd9e6a7f2d9..2351c6f0d56f 100644 --- a/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v1/test_data_policy_service.py +++ b/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v1/test_data_policy_service.py @@ -3534,6 +3534,9 @@ def test_list_data_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datapolicy.DataPolicy) for i in results) @@ -3626,6 +3629,8 @@ async def test_list_data_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5671,6 +5676,9 @@ def test_list_data_policies_rest_pager(transport: str = "rest"): pager = client.list_data_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datapolicy.DataPolicy) for i in results) diff --git a/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v1beta1/test_data_policy_service.py b/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v1beta1/test_data_policy_service.py index ec9549d242d2..0e756a4c5219 100644 --- a/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v1beta1/test_data_policy_service.py +++ b/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v1beta1/test_data_policy_service.py @@ -3128,6 +3128,9 @@ def test_list_data_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datapolicy.DataPolicy) for i in results) @@ -3220,6 +3223,8 @@ async def test_list_data_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v2/test_data_policy_service.py b/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v2/test_data_policy_service.py index af82a1135624..59875809fc35 100644 --- a/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v2/test_data_policy_service.py +++ b/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v2/test_data_policy_service.py @@ -3998,6 +3998,9 @@ def test_list_data_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datapolicy.DataPolicy) for i in results) @@ -4090,6 +4093,8 @@ async def test_list_data_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6360,6 +6365,9 @@ def test_list_data_policies_rest_pager(transport: str = "rest"): pager = client.list_data_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datapolicy.DataPolicy) for i in results) diff --git a/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v2beta1/test_data_policy_service.py b/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v2beta1/test_data_policy_service.py index 8975e3beaa06..083de21f6b20 100644 --- a/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v2beta1/test_data_policy_service.py +++ b/packages/google-cloud-bigquery-datapolicies/tests/unit/gapic/bigquery_datapolicies_v2beta1/test_data_policy_service.py @@ -3996,6 +3996,9 @@ def test_list_data_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datapolicy.DataPolicy) for i in results) @@ -4088,6 +4091,8 @@ async def test_list_data_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6343,6 +6348,9 @@ def test_list_data_policies_rest_pager(transport: str = "rest"): pager = client.list_data_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datapolicy.DataPolicy) for i in results) diff --git a/packages/google-cloud-bigquery-datatransfer/noxfile.py b/packages/google-cloud-bigquery-datatransfer/noxfile.py index 44d603729ba5..9d67d572858f 100644 --- a/packages/google-cloud-bigquery-datatransfer/noxfile.py +++ b/packages/google-cloud-bigquery-datatransfer/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-bigquery-datatransfer/testing/constraints-3.15.txt b/packages/google-cloud-bigquery-datatransfer/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-bigquery-datatransfer/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-bigquery-datatransfer/tests/unit/gapic/bigquery_datatransfer_v1/test_data_transfer_service.py b/packages/google-cloud-bigquery-datatransfer/tests/unit/gapic/bigquery_datatransfer_v1/test_data_transfer_service.py index 11d901644e8a..dace57c94ef6 100644 --- a/packages/google-cloud-bigquery-datatransfer/tests/unit/gapic/bigquery_datatransfer_v1/test_data_transfer_service.py +++ b/packages/google-cloud-bigquery-datatransfer/tests/unit/gapic/bigquery_datatransfer_v1/test_data_transfer_service.py @@ -2180,6 +2180,9 @@ def test_list_data_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datatransfer.DataSource) for i in results) @@ -2272,6 +2275,8 @@ async def test_list_data_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4231,6 +4236,9 @@ def test_list_transfer_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, transfer.TransferConfig) for i in results) @@ -4323,6 +4331,8 @@ async def test_list_transfer_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6062,6 +6072,9 @@ def test_list_transfer_runs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, transfer.TransferRun) for i in results) @@ -6154,6 +6167,8 @@ async def test_list_transfer_runs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6604,6 +6619,9 @@ def test_list_transfer_logs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, transfer.TransferMessage) for i in results) @@ -6696,6 +6714,8 @@ async def test_list_transfer_logs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8015,6 +8035,9 @@ def test_list_data_sources_rest_pager(transport: str = "rest"): pager = client.list_data_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datatransfer.DataSource) for i in results) @@ -9059,6 +9082,9 @@ def test_list_transfer_configs_rest_pager(transport: str = "rest"): pager = client.list_transfer_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, transfer.TransferConfig) for i in results) @@ -10013,6 +10039,9 @@ def test_list_transfer_runs_rest_pager(transport: str = "rest"): pager = client.list_transfer_runs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, transfer.TransferRun) for i in results) @@ -10279,6 +10308,9 @@ def test_list_transfer_logs_rest_pager(transport: str = "rest"): pager = client.list_transfer_logs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, transfer.TransferMessage) for i in results) diff --git a/packages/google-cloud-bigquery-logging/noxfile.py b/packages/google-cloud-bigquery-logging/noxfile.py index 357903bd6d52..541ac4b2a48d 100644 --- a/packages/google-cloud-bigquery-logging/noxfile.py +++ b/packages/google-cloud-bigquery-logging/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-bigquery-logging/testing/constraints-3.15.txt b/packages/google-cloud-bigquery-logging/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-bigquery-logging/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-bigquery-migration/noxfile.py b/packages/google-cloud-bigquery-migration/noxfile.py index 4b9be68bf2a8..46b0b6ae912e 100644 --- a/packages/google-cloud-bigquery-migration/noxfile.py +++ b/packages/google-cloud-bigquery-migration/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-bigquery-migration/testing/constraints-3.15.txt b/packages/google-cloud-bigquery-migration/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-bigquery-migration/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-bigquery-migration/tests/unit/gapic/bigquery_migration_v2/test_migration_service.py b/packages/google-cloud-bigquery-migration/tests/unit/gapic/bigquery_migration_v2/test_migration_service.py index 1fe9fbc581e8..d7fc84ac8688 100644 --- a/packages/google-cloud-bigquery-migration/tests/unit/gapic/bigquery_migration_v2/test_migration_service.py +++ b/packages/google-cloud-bigquery-migration/tests/unit/gapic/bigquery_migration_v2/test_migration_service.py @@ -2449,6 +2449,9 @@ def test_list_migration_workflows_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migration_entities.MigrationWorkflow) for i in results) @@ -2541,6 +2544,8 @@ async def test_list_migration_workflows_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4025,6 +4030,9 @@ def test_list_migration_subtasks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migration_entities.MigrationSubtask) for i in results) @@ -4117,6 +4125,8 @@ async def test_list_migration_subtasks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-bigquery-migration/tests/unit/gapic/bigquery_migration_v2alpha/test_migration_service.py b/packages/google-cloud-bigquery-migration/tests/unit/gapic/bigquery_migration_v2alpha/test_migration_service.py index 218f6d2e513e..3e2780b5a8ed 100644 --- a/packages/google-cloud-bigquery-migration/tests/unit/gapic/bigquery_migration_v2alpha/test_migration_service.py +++ b/packages/google-cloud-bigquery-migration/tests/unit/gapic/bigquery_migration_v2alpha/test_migration_service.py @@ -2445,6 +2445,9 @@ def test_list_migration_workflows_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migration_entities.MigrationWorkflow) for i in results) @@ -2537,6 +2540,8 @@ async def test_list_migration_workflows_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4021,6 +4026,9 @@ def test_list_migration_subtasks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migration_entities.MigrationSubtask) for i in results) @@ -4113,6 +4121,8 @@ async def test_list_migration_subtasks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-bigquery-reservation/noxfile.py b/packages/google-cloud-bigquery-reservation/noxfile.py index 839f10246119..921fe30fd2a5 100644 --- a/packages/google-cloud-bigquery-reservation/noxfile.py +++ b/packages/google-cloud-bigquery-reservation/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-bigquery-reservation/testing/constraints-3.15.txt b/packages/google-cloud-bigquery-reservation/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-bigquery-reservation/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-bigquery-reservation/tests/unit/gapic/bigquery_reservation_v1/test_reservation_service.py b/packages/google-cloud-bigquery-reservation/tests/unit/gapic/bigquery_reservation_v1/test_reservation_service.py index 49f949cd5cc3..4923e5f3f631 100644 --- a/packages/google-cloud-bigquery-reservation/tests/unit/gapic/bigquery_reservation_v1/test_reservation_service.py +++ b/packages/google-cloud-bigquery-reservation/tests/unit/gapic/bigquery_reservation_v1/test_reservation_service.py @@ -2182,6 +2182,9 @@ def test_list_reservations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reservation.Reservation) for i in results) @@ -2274,6 +2277,8 @@ async def test_list_reservations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4510,6 +4515,9 @@ def test_list_capacity_commitments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reservation.CapacityCommitment) for i in results) @@ -4602,6 +4610,8 @@ async def test_list_capacity_commitments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7225,6 +7235,9 @@ def test_list_assignments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reservation.Assignment) for i in results) @@ -7313,6 +7326,8 @@ async def test_list_assignments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8101,6 +8116,9 @@ def test_search_assignments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reservation.Assignment) for i in results) @@ -8193,6 +8211,8 @@ async def test_search_assignments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8658,6 +8678,9 @@ def test_search_all_assignments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reservation.Assignment) for i in results) @@ -8750,6 +8773,8 @@ async def test_search_all_assignments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12527,6 +12552,9 @@ def test_list_reservation_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reservation.ReservationGroup) for i in results) @@ -12619,6 +12647,8 @@ async def test_list_reservation_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13112,6 +13142,9 @@ def test_list_reservations_rest_pager(transport: str = "rest"): pager = client.list_reservations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reservation.Reservation) for i in results) @@ -14162,6 +14195,9 @@ def test_list_capacity_commitments_rest_pager(transport: str = "rest"): pager = client.list_capacity_commitments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reservation.CapacityCommitment) for i in results) @@ -15372,6 +15408,9 @@ def test_list_assignments_rest_pager(transport: str = "rest"): pager = client.list_assignments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reservation.Assignment) for i in results) @@ -15813,6 +15852,9 @@ def test_search_assignments_rest_pager(transport: str = "rest"): pager = client.search_assignments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reservation.Assignment) for i in results) @@ -16078,6 +16120,9 @@ def test_search_all_assignments_rest_pager(transport: str = "rest"): pager = client.search_all_assignments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reservation.Assignment) for i in results) @@ -17926,6 +17971,9 @@ def test_list_reservation_groups_rest_pager(transport: str = "rest"): pager = client.list_reservation_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reservation.ReservationGroup) for i in results) diff --git a/packages/google-cloud-bigquery-storage/noxfile.py b/packages/google-cloud-bigquery-storage/noxfile.py index 4ec53338e333..be7c2626afd0 100644 --- a/packages/google-cloud-bigquery-storage/noxfile.py +++ b/packages/google-cloud-bigquery-storage/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -119,6 +127,7 @@ def mypy(session): session.install(".[fastavro]") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", # TODO(https://github.com/googleapis/google-cloud-python/issues/16083) @@ -607,7 +616,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-bigquery-storage/testing/constraints-3.15.txt b/packages/google-cloud-bigquery-storage/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-bigquery-storage/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-bigtable/testing/constraints-3.15.txt b/packages/google-cloud-bigtable/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-bigtable/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_instance_admin.py b/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_instance_admin.py index d27cc603304b..41d517bea786 100644 --- a/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_instance_admin.py +++ b/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_instance_admin.py @@ -6414,6 +6414,9 @@ def test_list_app_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.AppProfile) for i in results) @@ -6506,6 +6509,8 @@ async def test_list_app_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8686,6 +8691,9 @@ def test_list_hot_tablets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.HotTablet) for i in results) @@ -8774,6 +8782,8 @@ async def test_list_hot_tablets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9928,6 +9938,9 @@ def test_list_logical_views_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.LogicalView) for i in results) @@ -10020,6 +10033,8 @@ async def test_list_logical_views_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11885,6 +11900,9 @@ def test_list_materialized_views_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.MaterializedView) for i in results) @@ -11977,6 +11995,8 @@ async def test_list_materialized_views_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15370,6 +15390,9 @@ def test_list_app_profiles_rest_pager(transport: str = "rest"): pager = client.list_app_profiles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.AppProfile) for i in results) @@ -16596,6 +16619,9 @@ def test_list_hot_tablets_rest_pager(transport: str = "rest"): pager = client.list_hot_tablets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.HotTablet) for i in results) @@ -17251,6 +17277,9 @@ def test_list_logical_views_rest_pager(transport: str = "rest"): pager = client.list_logical_views(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.LogicalView) for i in results) @@ -18281,6 +18310,9 @@ def test_list_materialized_views_rest_pager(transport: str = "rest"): pager = client.list_materialized_views(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.MaterializedView) for i in results) diff --git a/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_table_admin.py b/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_table_admin.py index 4eaa360189a1..95b68164b54b 100644 --- a/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_table_admin.py +++ b/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_table_admin.py @@ -2509,6 +2509,9 @@ def test_list_tables_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, table.Table) for i in results) @@ -2597,6 +2600,8 @@ async def test_list_tables_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4719,6 +4724,9 @@ def test_list_authorized_views_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, table.AuthorizedView) for i in results) @@ -4811,6 +4819,8 @@ async def test_list_authorized_views_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8285,6 +8295,9 @@ def test_list_snapshots_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, table.Snapshot) for i in results) @@ -8373,6 +8386,8 @@ async def test_list_snapshots_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10463,6 +10478,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, table.Backup) for i in results) @@ -10551,6 +10569,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13731,6 +13751,9 @@ def test_list_schema_bundles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, table.SchemaBundle) for i in results) @@ -13823,6 +13846,8 @@ async def test_list_schema_bundles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14859,6 +14884,9 @@ def test_list_tables_rest_pager(transport: str = "rest"): pager = client.list_tables(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, table.Table) for i in results) @@ -16062,6 +16090,9 @@ def test_list_authorized_views_rest_pager(transport: str = "rest"): pager = client.list_authorized_views(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, table.AuthorizedView) for i in results) @@ -17975,6 +18006,9 @@ def test_list_snapshots_rest_pager(transport: str = "rest"): pager = client.list_snapshots(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, table.Snapshot) for i in results) @@ -19167,6 +19201,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, table.Backup) for i in results) @@ -20914,6 +20951,9 @@ def test_list_schema_bundles_rest_pager(transport: str = "rest"): pager = client.list_schema_bundles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, table.SchemaBundle) for i in results) diff --git a/packages/google-cloud-billing-budgets/noxfile.py b/packages/google-cloud-billing-budgets/noxfile.py index d1f4e6341b46..13aefc1eefec 100644 --- a/packages/google-cloud-billing-budgets/noxfile.py +++ b/packages/google-cloud-billing-budgets/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-billing-budgets/testing/constraints-3.15.txt b/packages/google-cloud-billing-budgets/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-billing-budgets/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-billing-budgets/tests/unit/gapic/budgets_v1/test_budget_service.py b/packages/google-cloud-billing-budgets/tests/unit/gapic/budgets_v1/test_budget_service.py index 6e13188d096a..dc4a999f3ee7 100644 --- a/packages/google-cloud-billing-budgets/tests/unit/gapic/budgets_v1/test_budget_service.py +++ b/packages/google-cloud-billing-budgets/tests/unit/gapic/budgets_v1/test_budget_service.py @@ -2701,6 +2701,9 @@ def test_list_budgets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, budget_model.Budget) for i in results) @@ -2789,6 +2792,8 @@ async def test_list_budgets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3939,6 +3944,9 @@ def test_list_budgets_rest_pager(transport: str = "rest"): pager = client.list_budgets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, budget_model.Budget) for i in results) diff --git a/packages/google-cloud-billing-budgets/tests/unit/gapic/budgets_v1beta1/test_budget_service.py b/packages/google-cloud-billing-budgets/tests/unit/gapic/budgets_v1beta1/test_budget_service.py index b88e36a86ca8..2dbec9aeabfe 100644 --- a/packages/google-cloud-billing-budgets/tests/unit/gapic/budgets_v1beta1/test_budget_service.py +++ b/packages/google-cloud-billing-budgets/tests/unit/gapic/budgets_v1beta1/test_budget_service.py @@ -2339,6 +2339,9 @@ def test_list_budgets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, budget_model.Budget) for i in results) @@ -2427,6 +2430,8 @@ async def test_list_budgets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-billing/noxfile.py b/packages/google-cloud-billing/noxfile.py index 3f1f9d83aaf2..0748262ff028 100644 --- a/packages/google-cloud-billing/noxfile.py +++ b/packages/google-cloud-billing/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-billing/testing/constraints-3.15.txt b/packages/google-cloud-billing/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-billing/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-billing/tests/unit/gapic/billing_v1/test_cloud_billing.py b/packages/google-cloud-billing/tests/unit/gapic/billing_v1/test_cloud_billing.py index 1c271d45ead8..1cde3da82b7e 100644 --- a/packages/google-cloud-billing/tests/unit/gapic/billing_v1/test_cloud_billing.py +++ b/packages/google-cloud-billing/tests/unit/gapic/billing_v1/test_cloud_billing.py @@ -2003,6 +2003,9 @@ def test_list_billing_accounts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_billing.BillingAccount) for i in results) @@ -2095,6 +2098,8 @@ async def test_list_billing_accounts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3235,6 +3240,9 @@ def test_list_project_billing_info_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_billing.ProjectBillingInfo) for i in results) @@ -3327,6 +3335,8 @@ async def test_list_project_billing_info_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5773,6 +5783,9 @@ def test_list_billing_accounts_rest_pager(transport: str = "rest"): pager = client.list_billing_accounts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_billing.BillingAccount) for i in results) @@ -6407,6 +6420,9 @@ def test_list_project_billing_info_rest_pager(transport: str = "rest"): pager = client.list_project_billing_info(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_billing.ProjectBillingInfo) for i in results) diff --git a/packages/google-cloud-billing/tests/unit/gapic/billing_v1/test_cloud_catalog.py b/packages/google-cloud-billing/tests/unit/gapic/billing_v1/test_cloud_catalog.py index 90e824a5518c..3fd9452085a2 100644 --- a/packages/google-cloud-billing/tests/unit/gapic/billing_v1/test_cloud_catalog.py +++ b/packages/google-cloud-billing/tests/unit/gapic/billing_v1/test_cloud_catalog.py @@ -1532,6 +1532,9 @@ def test_list_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_catalog.Service) for i in results) @@ -1620,6 +1623,8 @@ async def test_list_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2048,6 +2053,9 @@ def test_list_skus_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_catalog.Sku) for i in results) @@ -2136,6 +2144,8 @@ async def test_list_skus_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2279,6 +2289,9 @@ def test_list_services_rest_pager(transport: str = "rest"): pager = client.list_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_catalog.Service) for i in results) @@ -2535,6 +2548,9 @@ def test_list_skus_rest_pager(transport: str = "rest"): pager = client.list_skus(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_catalog.Sku) for i in results) diff --git a/packages/google-cloud-binary-authorization/noxfile.py b/packages/google-cloud-binary-authorization/noxfile.py index 4ed4e5ad9604..8eece061b10d 100644 --- a/packages/google-cloud-binary-authorization/noxfile.py +++ b/packages/google-cloud-binary-authorization/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-binary-authorization/testing/constraints-3.15.txt b/packages/google-cloud-binary-authorization/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-binary-authorization/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-binary-authorization/tests/unit/gapic/binaryauthorization_v1/test_binauthz_management_service_v1.py b/packages/google-cloud-binary-authorization/tests/unit/gapic/binaryauthorization_v1/test_binauthz_management_service_v1.py index 450f321c6436..89c68075e6ff 100644 --- a/packages/google-cloud-binary-authorization/tests/unit/gapic/binaryauthorization_v1/test_binauthz_management_service_v1.py +++ b/packages/google-cloud-binary-authorization/tests/unit/gapic/binaryauthorization_v1/test_binauthz_management_service_v1.py @@ -3454,6 +3454,9 @@ def test_list_attestors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Attestor) for i in results) @@ -3542,6 +3545,8 @@ async def test_list_attestors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5044,6 +5049,9 @@ def test_list_attestors_rest_pager(transport: str = "rest"): pager = client.list_attestors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Attestor) for i in results) diff --git a/packages/google-cloud-binary-authorization/tests/unit/gapic/binaryauthorization_v1beta1/test_binauthz_management_service_v1_beta1.py b/packages/google-cloud-binary-authorization/tests/unit/gapic/binaryauthorization_v1beta1/test_binauthz_management_service_v1_beta1.py index e0bdc08172d1..bd13505f2e3e 100644 --- a/packages/google-cloud-binary-authorization/tests/unit/gapic/binaryauthorization_v1beta1/test_binauthz_management_service_v1_beta1.py +++ b/packages/google-cloud-binary-authorization/tests/unit/gapic/binaryauthorization_v1beta1/test_binauthz_management_service_v1_beta1.py @@ -3491,6 +3491,9 @@ def test_list_attestors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Attestor) for i in results) @@ -3579,6 +3582,8 @@ async def test_list_attestors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5083,6 +5088,9 @@ def test_list_attestors_rest_pager(transport: str = "rest"): pager = client.list_attestors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Attestor) for i in results) diff --git a/packages/google-cloud-build/noxfile.py b/packages/google-cloud-build/noxfile.py index a0694e258d3f..7c9e09fca8fd 100644 --- a/packages/google-cloud-build/noxfile.py +++ b/packages/google-cloud-build/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-build/testing/constraints-3.15.txt b/packages/google-cloud-build/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-build/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-build/tests/unit/gapic/cloudbuild_v1/test_cloud_build.py b/packages/google-cloud-build/tests/unit/gapic/cloudbuild_v1/test_cloud_build.py index 0a29eafbef44..3319f7a459b8 100644 --- a/packages/google-cloud-build/tests/unit/gapic/cloudbuild_v1/test_cloud_build.py +++ b/packages/google-cloud-build/tests/unit/gapic/cloudbuild_v1/test_cloud_build.py @@ -2229,6 +2229,9 @@ def test_list_builds_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloudbuild.Build) for i in results) @@ -2317,6 +2320,8 @@ async def test_list_builds_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4274,6 +4279,9 @@ def test_list_build_triggers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloudbuild.BuildTrigger) for i in results) @@ -4366,6 +4374,8 @@ async def test_list_build_triggers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7093,6 +7103,9 @@ def test_list_worker_pools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloudbuild.WorkerPool) for i in results) @@ -7185,6 +7198,8 @@ async def test_list_worker_pools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8151,6 +8166,9 @@ def test_list_builds_rest_pager(transport: str = "rest"): pager = client.list_builds(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloudbuild.Build) for i in results) @@ -9369,6 +9387,9 @@ def test_list_build_triggers_rest_pager(transport: str = "rest"): pager = client.list_build_triggers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloudbuild.BuildTrigger) for i in results) @@ -11061,6 +11082,9 @@ def test_list_worker_pools_rest_pager(transport: str = "rest"): pager = client.list_worker_pools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloudbuild.WorkerPool) for i in results) diff --git a/packages/google-cloud-build/tests/unit/gapic/cloudbuild_v2/test_repository_manager.py b/packages/google-cloud-build/tests/unit/gapic/cloudbuild_v2/test_repository_manager.py index ac0f4615203d..3dc990c6d595 100644 --- a/packages/google-cloud-build/tests/unit/gapic/cloudbuild_v2/test_repository_manager.py +++ b/packages/google-cloud-build/tests/unit/gapic/cloudbuild_v2/test_repository_manager.py @@ -2454,6 +2454,9 @@ def test_list_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, repositories.Connection) for i in results) @@ -2542,6 +2545,8 @@ async def test_list_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4751,6 +4756,9 @@ def test_list_repositories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, repositories.Repository) for i in results) @@ -4843,6 +4851,8 @@ async def test_list_repositories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6229,6 +6239,9 @@ def test_fetch_linkable_repositories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, repositories.Repository) for i in results) @@ -6321,6 +6334,8 @@ async def test_fetch_linkable_repositories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7337,6 +7352,9 @@ def test_list_connections_rest_pager(transport: str = "rest"): pager = client.list_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, repositories.Connection) for i in results) @@ -8580,6 +8598,9 @@ def test_list_repositories_rest_pager(transport: str = "rest"): pager = client.list_repositories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, repositories.Repository) for i in results) @@ -9352,6 +9373,9 @@ def test_fetch_linkable_repositories_rest_pager(transport: str = "rest"): pager = client.fetch_linkable_repositories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, repositories.Repository) for i in results) diff --git a/packages/google-cloud-capacityplanner/noxfile.py b/packages/google-cloud-capacityplanner/noxfile.py index 100e4db93531..f5b37ff0f23e 100644 --- a/packages/google-cloud-capacityplanner/noxfile.py +++ b/packages/google-cloud-capacityplanner/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-capacityplanner/testing/constraints-3.15.txt b/packages/google-cloud-capacityplanner/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-capacityplanner/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-certificate-manager/noxfile.py b/packages/google-cloud-certificate-manager/noxfile.py index 7d2237416f29..6376c7d923ac 100644 --- a/packages/google-cloud-certificate-manager/noxfile.py +++ b/packages/google-cloud-certificate-manager/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-certificate-manager/testing/constraints-3.15.txt b/packages/google-cloud-certificate-manager/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-certificate-manager/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-certificate-manager/tests/unit/gapic/certificate_manager_v1/test_certificate_manager.py b/packages/google-cloud-certificate-manager/tests/unit/gapic/certificate_manager_v1/test_certificate_manager.py index ca1121a20f45..4b03b7dd92cc 100644 --- a/packages/google-cloud-certificate-manager/tests/unit/gapic/certificate_manager_v1/test_certificate_manager.py +++ b/packages/google-cloud-certificate-manager/tests/unit/gapic/certificate_manager_v1/test_certificate_manager.py @@ -1784,6 +1784,9 @@ def test_list_certificates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, certificate_manager.Certificate) for i in results) @@ -1876,6 +1879,8 @@ async def test_list_certificates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3743,6 +3748,9 @@ def test_list_certificate_maps_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, certificate_manager.CertificateMap) for i in results) @@ -3835,6 +3843,8 @@ async def test_list_certificate_maps_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5719,6 +5729,9 @@ def test_list_certificate_map_entries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5813,6 +5826,8 @@ async def test_list_certificate_map_entries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7727,6 +7742,9 @@ def test_list_dns_authorizations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, certificate_manager.DnsAuthorization) for i in results) @@ -7819,6 +7837,8 @@ async def test_list_dns_authorizations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9724,6 +9744,9 @@ def test_list_certificate_issuance_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -9819,6 +9842,8 @@ async def test_list_certificate_issuance_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11385,6 +11410,9 @@ def test_list_trust_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, trust_config.TrustConfig) for i in results) @@ -11477,6 +11505,8 @@ async def test_list_trust_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13187,6 +13217,9 @@ def test_list_certificates_rest_pager(transport: str = "rest"): pager = client.list_certificates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, certificate_manager.Certificate) for i in results) @@ -14220,6 +14253,9 @@ def test_list_certificate_maps_rest_pager(transport: str = "rest"): pager = client.list_certificate_maps(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, certificate_manager.CertificateMap) for i in results) @@ -15267,6 +15303,9 @@ def test_list_certificate_map_entries_rest_pager(transport: str = "rest"): pager = client.list_certificate_map_entries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -16328,6 +16367,9 @@ def test_list_dns_authorizations_rest_pager(transport: str = "rest"): pager = client.list_dns_authorizations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, certificate_manager.DnsAuthorization) for i in results) @@ -17386,6 +17428,9 @@ def test_list_certificate_issuance_configs_rest_pager(transport: str = "rest"): pager = client.list_certificate_issuance_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -18261,6 +18306,9 @@ def test_list_trust_configs_rest_pager(transport: str = "rest"): pager = client.list_trust_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, trust_config.TrustConfig) for i in results) diff --git a/packages/google-cloud-ces/noxfile.py b/packages/google-cloud-ces/noxfile.py index e52903354c45..8ec5c36d350f 100644 --- a/packages/google-cloud-ces/noxfile.py +++ b/packages/google-cloud-ces/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-ces/testing/constraints-3.15.txt b/packages/google-cloud-ces/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-ces/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-ces/tests/unit/gapic/ces_v1/test_agent_service.py b/packages/google-cloud-ces/tests/unit/gapic/ces_v1/test_agent_service.py index dee5b0d37f20..13e4283782d9 100644 --- a/packages/google-cloud-ces/tests/unit/gapic/ces_v1/test_agent_service.py +++ b/packages/google-cloud-ces/tests/unit/gapic/ces_v1/test_agent_service.py @@ -1737,6 +1737,9 @@ def test_list_apps_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app.App) for i in results) @@ -1825,6 +1828,8 @@ async def test_list_apps_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4337,6 +4342,9 @@ def test_list_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) @@ -4425,6 +4433,8 @@ async def test_list_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6253,6 +6263,9 @@ def test_list_examples_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, example.Example) for i in results) @@ -6341,6 +6354,8 @@ async def test_list_examples_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8133,6 +8148,9 @@ def test_list_tools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.Tool) for i in results) @@ -8221,6 +8239,8 @@ async def test_list_tools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9005,6 +9025,9 @@ def test_list_conversations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -9097,6 +9120,8 @@ async def test_list_conversations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11606,6 +11631,9 @@ def test_list_guardrails_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, guardrail.Guardrail) for i in results) @@ -11694,6 +11722,8 @@ async def test_list_guardrails_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13538,6 +13568,9 @@ def test_list_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployment.Deployment) for i in results) @@ -13626,6 +13659,8 @@ async def test_list_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15456,6 +15491,9 @@ def test_list_toolsets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, toolset.Toolset) for i in results) @@ -15544,6 +15582,8 @@ async def test_list_toolsets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17384,6 +17424,9 @@ def test_list_app_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app_version.AppVersion) for i in results) @@ -17476,6 +17519,8 @@ async def test_list_app_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -19308,6 +19353,9 @@ def test_list_changelogs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, changelog.Changelog) for i in results) @@ -19396,6 +19444,8 @@ async def test_list_changelogs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20043,6 +20093,9 @@ def test_list_apps_rest_pager(transport: str = "rest"): pager = client.list_apps(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app.App) for i in results) @@ -21380,6 +21433,9 @@ def test_list_agents_rest_pager(transport: str = "rest"): pager = client.list_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) @@ -22383,6 +22439,9 @@ def test_list_examples_rest_pager(transport: str = "rest"): pager = client.list_examples(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, example.Example) for i in results) @@ -23369,6 +23428,9 @@ def test_list_tools_rest_pager(transport: str = "rest"): pager = client.list_tools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.Tool) for i in results) @@ -23813,6 +23875,9 @@ def test_list_conversations_rest_pager(transport: str = "rest"): pager = client.list_conversations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -25200,6 +25265,9 @@ def test_list_guardrails_rest_pager(transport: str = "rest"): pager = client.list_guardrails(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, guardrail.Guardrail) for i in results) @@ -26227,6 +26295,9 @@ def test_list_deployments_rest_pager(transport: str = "rest"): pager = client.list_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployment.Deployment) for i in results) @@ -27225,6 +27296,9 @@ def test_list_toolsets_rest_pager(transport: str = "rest"): pager = client.list_toolsets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, toolset.Toolset) for i in results) @@ -28246,6 +28320,9 @@ def test_list_app_versions_rest_pager(transport: str = "rest"): pager = client.list_app_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app_version.AppVersion) for i in results) @@ -29248,6 +29325,9 @@ def test_list_changelogs_rest_pager(transport: str = "rest"): pager = client.list_changelogs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, changelog.Changelog) for i in results) 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 501b21ad1dbf..83b160d45a28 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 @@ -1743,6 +1743,9 @@ def test_list_apps_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app.App) for i in results) @@ -1831,6 +1834,8 @@ async def test_list_apps_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5055,6 +5060,9 @@ def test_list_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) @@ -5143,6 +5151,8 @@ async def test_list_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6983,6 +6993,9 @@ def test_list_examples_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, example.Example) for i in results) @@ -7071,6 +7084,8 @@ async def test_list_examples_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8863,6 +8878,9 @@ def test_list_tools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.Tool) for i in results) @@ -8951,6 +8969,8 @@ async def test_list_tools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9735,6 +9755,9 @@ def test_list_conversations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -9827,6 +9850,8 @@ async def test_list_conversations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12336,6 +12361,9 @@ def test_list_guardrails_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, guardrail.Guardrail) for i in results) @@ -12424,6 +12452,8 @@ async def test_list_guardrails_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14268,6 +14298,9 @@ def test_list_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployment.Deployment) for i in results) @@ -14356,6 +14389,8 @@ async def test_list_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16186,6 +16221,9 @@ def test_list_toolsets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, toolset.Toolset) for i in results) @@ -16274,6 +16312,8 @@ async def test_list_toolsets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18114,6 +18154,9 @@ def test_list_app_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app_version.AppVersion) for i in results) @@ -18206,6 +18249,8 @@ async def test_list_app_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20387,6 +20432,9 @@ def test_list_changelogs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, changelog.Changelog) for i in results) @@ -20475,6 +20523,8 @@ async def test_list_changelogs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -21122,6 +21172,9 @@ def test_list_apps_rest_pager(transport: str = "rest"): pager = client.list_apps(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app.App) for i in results) @@ -22830,6 +22883,9 @@ def test_list_agents_rest_pager(transport: str = "rest"): pager = client.list_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) @@ -23833,6 +23889,9 @@ def test_list_examples_rest_pager(transport: str = "rest"): pager = client.list_examples(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, example.Example) for i in results) @@ -24819,6 +24878,9 @@ def test_list_tools_rest_pager(transport: str = "rest"): pager = client.list_tools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.Tool) for i in results) @@ -25263,6 +25325,9 @@ def test_list_conversations_rest_pager(transport: str = "rest"): pager = client.list_conversations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -26650,6 +26715,9 @@ def test_list_guardrails_rest_pager(transport: str = "rest"): pager = client.list_guardrails(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, guardrail.Guardrail) for i in results) @@ -27677,6 +27745,9 @@ def test_list_deployments_rest_pager(transport: str = "rest"): pager = client.list_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployment.Deployment) for i in results) @@ -28675,6 +28746,9 @@ def test_list_toolsets_rest_pager(transport: str = "rest"): pager = client.list_toolsets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, toolset.Toolset) for i in results) @@ -29696,6 +29770,9 @@ def test_list_app_versions_rest_pager(transport: str = "rest"): pager = client.list_app_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, app_version.AppVersion) for i in results) @@ -30881,6 +30958,9 @@ def test_list_changelogs_rest_pager(transport: str = "rest"): pager = client.list_changelogs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, changelog.Changelog) for i in results) 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 ec4d158b24a6..b9aa7e34ee97 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 @@ -7724,6 +7724,9 @@ def test_list_evaluations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.Evaluation) for i in results) @@ -7812,6 +7815,8 @@ async def test_list_evaluations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8267,6 +8272,9 @@ def test_list_evaluation_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.EvaluationResult) for i in results) @@ -8359,6 +8367,8 @@ async def test_list_evaluation_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8818,6 +8828,9 @@ def test_list_evaluation_datasets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.EvaluationDataset) for i in results) @@ -8910,6 +8923,8 @@ async def test_list_evaluation_datasets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9366,6 +9381,9 @@ def test_list_evaluation_runs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.EvaluationRun) for i in results) @@ -9458,6 +9476,8 @@ async def test_list_evaluation_runs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9917,6 +9937,9 @@ def test_list_evaluation_expectations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.EvaluationExpectation) for i in results) @@ -10009,6 +10032,8 @@ async def test_list_evaluation_expectations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12736,6 +12761,9 @@ def test_list_scheduled_evaluation_runs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.ScheduledEvaluationRun) for i in results) @@ -12828,6 +12856,8 @@ async def test_list_scheduled_evaluation_runs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18667,6 +18697,9 @@ def test_list_evaluations_rest_pager(transport: str = "rest"): pager = client.list_evaluations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.Evaluation) for i in results) @@ -18939,6 +18972,9 @@ def test_list_evaluation_results_rest_pager(transport: str = "rest"): pager = client.list_evaluation_results(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.EvaluationResult) for i in results) @@ -19209,6 +19245,9 @@ def test_list_evaluation_datasets_rest_pager(transport: str = "rest"): pager = client.list_evaluation_datasets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.EvaluationDataset) for i in results) @@ -19475,6 +19514,9 @@ def test_list_evaluation_runs_rest_pager(transport: str = "rest"): pager = client.list_evaluation_runs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.EvaluationRun) for i in results) @@ -19745,6 +19787,9 @@ def test_list_evaluation_expectations_rest_pager(transport: str = "rest"): pager = client.list_evaluation_expectations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.EvaluationExpectation) for i in results) @@ -21180,6 +21225,9 @@ def test_list_scheduled_evaluation_runs_rest_pager(transport: str = "rest"): pager = client.list_scheduled_evaluation_runs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.ScheduledEvaluationRun) for i in results) diff --git a/packages/google-cloud-channel/noxfile.py b/packages/google-cloud-channel/noxfile.py index 026a1cb20eec..972a478caff3 100644 --- a/packages/google-cloud-channel/noxfile.py +++ b/packages/google-cloud-channel/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-channel/testing/constraints-3.15.txt b/packages/google-cloud-channel/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-channel/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-channel/tests/unit/gapic/channel_v1/test_cloud_channel_reports_service.py b/packages/google-cloud-channel/tests/unit/gapic/channel_v1/test_cloud_channel_reports_service.py index a9d093bec4d5..f6a2578e5245 100644 --- a/packages/google-cloud-channel/tests/unit/gapic/channel_v1/test_cloud_channel_reports_service.py +++ b/packages/google-cloud-channel/tests/unit/gapic/channel_v1/test_cloud_channel_reports_service.py @@ -2028,6 +2028,9 @@ def test_fetch_report_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reports_service.Row) for i in results) @@ -2120,6 +2123,8 @@ async def test_fetch_report_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2552,6 +2557,9 @@ def test_list_reports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reports_service.Report) for i in results) @@ -2640,6 +2648,8 @@ async def test_list_reports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-channel/tests/unit/gapic/channel_v1/test_cloud_channel_service.py b/packages/google-cloud-channel/tests/unit/gapic/channel_v1/test_cloud_channel_service.py index df935c0e17f5..c80a2db58e64 100644 --- a/packages/google-cloud-channel/tests/unit/gapic/channel_v1/test_cloud_channel_service.py +++ b/packages/google-cloud-channel/tests/unit/gapic/channel_v1/test_cloud_channel_service.py @@ -1658,6 +1658,9 @@ def test_list_customers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, customers.Customer) for i in results) @@ -1746,6 +1749,8 @@ async def test_list_customers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4138,6 +4143,9 @@ def test_list_entitlements_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entitlements.Entitlement) for i in results) @@ -4230,6 +4238,8 @@ async def test_list_entitlements_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4605,6 +4615,9 @@ def test_list_transferable_skus_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entitlements.TransferableSku) for i in results) @@ -4697,6 +4710,8 @@ async def test_list_transferable_skus_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5076,6 +5091,9 @@ def test_list_transferable_offers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.TransferableOffer) for i in results) @@ -5168,6 +5186,8 @@ async def test_list_transferable_offers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8442,6 +8462,9 @@ def test_list_channel_partner_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -8536,6 +8559,8 @@ async def test_list_channel_partner_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10165,6 +10190,9 @@ def test_list_customer_repricing_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, repricing.CustomerRepricingConfig) for i in results) @@ -10257,6 +10285,8 @@ async def test_list_customer_repricing_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12106,6 +12136,9 @@ def test_list_channel_partner_repricing_configs_pager(transport_name: str = "grp assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -12200,6 +12233,8 @@ async def test_list_channel_partner_repricing_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13679,6 +13714,9 @@ def test_list_sku_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.SkuGroup) for i in results) @@ -13767,6 +13805,8 @@ async def test_list_sku_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14220,6 +14260,9 @@ def test_list_sku_group_billable_skus_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.BillableSku) for i in results) @@ -14312,6 +14355,8 @@ async def test_list_sku_group_billable_skus_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14844,6 +14889,9 @@ def test_list_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, products.Product) for i in results) @@ -14932,6 +14980,8 @@ async def test_list_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15280,6 +15330,9 @@ def test_list_skus_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, products.Sku) for i in results) @@ -15368,6 +15421,8 @@ async def test_list_skus_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15718,6 +15773,9 @@ def test_list_offers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, offers.Offer) for i in results) @@ -15806,6 +15864,8 @@ async def test_list_offers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16173,6 +16233,9 @@ def test_list_purchasable_skus_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.PurchasableSku) for i in results) @@ -16265,6 +16328,8 @@ async def test_list_purchasable_skus_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16634,6 +16699,9 @@ def test_list_purchasable_offers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.PurchasableOffer) for i in results) @@ -16726,6 +16794,8 @@ async def test_list_purchasable_offers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17862,6 +17932,9 @@ def test_list_subscribers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -17950,6 +18023,8 @@ async def test_list_subscribers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18405,6 +18480,9 @@ def test_list_entitlement_changes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -18499,6 +18577,8 @@ async def test_list_entitlement_changes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-chronicle/noxfile.py b/packages/google-cloud-chronicle/noxfile.py index 0bd323608bc8..cd57cb0dbe01 100644 --- a/packages/google-cloud-chronicle/noxfile.py +++ b/packages/google-cloud-chronicle/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-chronicle/testing/constraints-3.15.txt b/packages/google-cloud-chronicle/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-chronicle/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_data_access_control_service.py b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_data_access_control_service.py index 1c8133b2e450..39ad5ef1c8f7 100644 --- a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_data_access_control_service.py +++ b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_data_access_control_service.py @@ -2552,6 +2552,9 @@ def test_list_data_access_labels_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_access_control.DataAccessLabel) for i in results) @@ -2644,6 +2647,8 @@ async def test_list_data_access_labels_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4566,6 +4571,9 @@ def test_list_data_access_scopes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_access_control.DataAccessScope) for i in results) @@ -4658,6 +4666,8 @@ async def test_list_data_access_scopes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6085,6 +6095,9 @@ def test_list_data_access_labels_rest_pager(transport: str = "rest"): pager = client.list_data_access_labels(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_access_control.DataAccessLabel) for i in results) @@ -7127,6 +7140,9 @@ def test_list_data_access_scopes_rest_pager(transport: str = "rest"): pager = client.list_data_access_scopes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_access_control.DataAccessScope) for i in results) diff --git a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_data_table_service.py b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_data_table_service.py index f251cdccae9f..44b83d183ccd 100644 --- a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_data_table_service.py +++ b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_data_table_service.py @@ -2135,6 +2135,9 @@ def test_list_data_tables_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_table.DataTable) for i in results) @@ -2223,6 +2226,8 @@ async def test_list_data_tables_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4471,6 +4476,9 @@ def test_list_data_table_rows_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_table.DataTableRow) for i in results) @@ -4563,6 +4571,8 @@ async def test_list_data_table_rows_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7530,6 +7540,9 @@ def test_list_data_tables_rest_pager(transport: str = "rest"): pager = client.list_data_tables(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_table.DataTable) for i in results) @@ -8726,6 +8739,9 @@ def test_list_data_table_rows_rest_pager(transport: str = "rest"): pager = client.list_data_table_rows(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_table.DataTableRow) for i in results) diff --git a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_entity_service.py b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_entity_service.py index 40a14de186e0..fe39b6264e48 100644 --- a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_entity_service.py +++ b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_entity_service.py @@ -2031,6 +2031,9 @@ def test_list_watchlists_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entity.Watchlist) for i in results) @@ -2119,6 +2122,8 @@ async def test_list_watchlists_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3621,6 +3626,9 @@ def test_list_watchlists_rest_pager(transport: str = "rest"): pager = client.list_watchlists(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entity.Watchlist) for i in results) diff --git a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_featured_content_native_dashboard_service.py b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_featured_content_native_dashboard_service.py index d55470d6080e..0b4b2d190c4b 100644 --- a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_featured_content_native_dashboard_service.py +++ b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_featured_content_native_dashboard_service.py @@ -2253,6 +2253,9 @@ def test_list_featured_content_native_dashboards_pager(transport_name: str = "gr assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2350,6 +2353,8 @@ async def test_list_featured_content_native_dashboards_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3249,6 +3254,9 @@ def test_list_featured_content_native_dashboards_rest_pager(transport: str = "re pager = client.list_featured_content_native_dashboards(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_native_dashboard_service.py b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_native_dashboard_service.py index d2695239967c..1ac71e1456e6 100644 --- a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_native_dashboard_service.py +++ b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_native_dashboard_service.py @@ -2557,6 +2557,9 @@ def test_list_native_dashboards_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, native_dashboard.NativeDashboard) for i in results) @@ -2649,6 +2652,8 @@ async def test_list_native_dashboards_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6531,6 +6536,9 @@ def test_list_native_dashboards_rest_pager(transport: str = "rest"): pager = client.list_native_dashboards(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, native_dashboard.NativeDashboard) for i in results) diff --git a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_reference_list_service.py b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_reference_list_service.py index e81b69811745..9ae0d2c9e6fa 100644 --- a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_reference_list_service.py +++ b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_reference_list_service.py @@ -2156,6 +2156,9 @@ def test_list_reference_lists_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reference_list.ReferenceList) for i in results) @@ -2248,6 +2251,8 @@ async def test_list_reference_lists_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3775,6 +3780,9 @@ def test_list_reference_lists_rest_pager(transport: str = "rest"): pager = client.list_reference_lists(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reference_list.ReferenceList) for i in results) diff --git a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_rule_execution_error_service.py b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_rule_execution_error_service.py index f1027b35867d..57900f0b76e9 100644 --- a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_rule_execution_error_service.py +++ b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_rule_execution_error_service.py @@ -1809,6 +1809,9 @@ def test_list_rule_execution_errors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1903,6 +1906,8 @@ async def test_list_rule_execution_errors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2223,6 +2228,9 @@ def test_list_rule_execution_errors_rest_pager(transport: str = "rest"): pager = client.list_rule_execution_errors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_rule_service.py b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_rule_service.py index f5dda5f4378f..9c04d909b2a3 100644 --- a/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_rule_service.py +++ b/packages/google-cloud-chronicle/tests/unit/gapic/chronicle_v1/test_rule_service.py @@ -2409,6 +2409,9 @@ def test_list_rules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rule.Rule) for i in results) @@ -2497,6 +2500,8 @@ async def test_list_rules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3965,6 +3970,9 @@ def test_list_rule_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rule.Rule) for i in results) @@ -4057,6 +4065,8 @@ async def test_list_rule_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5157,6 +5167,9 @@ def test_list_retrohunts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rule.Retrohunt) for i in results) @@ -5245,6 +5258,8 @@ async def test_list_retrohunts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6064,6 +6079,9 @@ def test_list_rule_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rule.RuleDeployment) for i in results) @@ -6156,6 +6174,8 @@ async def test_list_rule_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7206,6 +7226,9 @@ def test_list_rules_rest_pager(transport: str = "rest"): pager = client.list_rules(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rule.Rule) for i in results) @@ -8020,6 +8043,9 @@ def test_list_rule_revisions_rest_pager(transport: str = "rest"): pager = client.list_rule_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rule.Rule) for i in results) @@ -8648,6 +8674,9 @@ def test_list_retrohunts_rest_pager(transport: str = "rest"): pager = client.list_retrohunts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rule.Retrohunt) for i in results) @@ -9097,6 +9126,9 @@ def test_list_rule_deployments_rest_pager(transport: str = "rest"): pager = client.list_rule_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rule.RuleDeployment) for i in results) diff --git a/packages/google-cloud-cloudcontrolspartner/noxfile.py b/packages/google-cloud-cloudcontrolspartner/noxfile.py index 26cc3368c7ba..b9659bddfeb7 100644 --- a/packages/google-cloud-cloudcontrolspartner/noxfile.py +++ b/packages/google-cloud-cloudcontrolspartner/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-cloudcontrolspartner/testing/constraints-3.15.txt b/packages/google-cloud-cloudcontrolspartner/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-cloudcontrolspartner/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1/test_cloud_controls_partner_core.py b/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1/test_cloud_controls_partner_core.py index c9b1de8f1c8b..0a6262212023 100644 --- a/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1/test_cloud_controls_partner_core.py +++ b/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1/test_cloud_controls_partner_core.py @@ -2142,6 +2142,9 @@ def test_list_workloads_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, customer_workloads.Workload) for i in results) @@ -2230,6 +2233,8 @@ async def test_list_workloads_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2998,6 +3003,9 @@ def test_list_customers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, customers.Customer) for i in results) @@ -3086,6 +3094,8 @@ async def test_list_customers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4252,6 +4262,9 @@ def test_list_access_approval_requests_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4347,6 +4360,8 @@ async def test_list_access_approval_requests_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6174,6 +6189,9 @@ def test_list_workloads_rest_pager(transport: str = "rest"): pager = client.list_workloads(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, customer_workloads.Workload) for i in results) @@ -6610,6 +6628,9 @@ def test_list_customers_rest_pager(transport: str = "rest"): pager = client.list_customers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, customers.Customer) for i in results) @@ -7257,6 +7278,9 @@ def test_list_access_approval_requests_rest_pager(transport: str = "rest"): pager = client.list_access_approval_requests(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1/test_cloud_controls_partner_monitoring.py b/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1/test_cloud_controls_partner_monitoring.py index 5c3c03ec1707..957be025ca4b 100644 --- a/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1/test_cloud_controls_partner_monitoring.py +++ b/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1/test_cloud_controls_partner_monitoring.py @@ -1833,6 +1833,9 @@ def test_list_violations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, violations.Violation) for i in results) @@ -1921,6 +1924,8 @@ async def test_list_violations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2573,6 +2578,9 @@ def test_list_violations_rest_pager(transport: str = "rest"): pager = client.list_violations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, violations.Violation) for i in results) diff --git a/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1beta/test_cloud_controls_partner_core.py b/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1beta/test_cloud_controls_partner_core.py index 20c298d95ebd..30331b69f88c 100644 --- a/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1beta/test_cloud_controls_partner_core.py +++ b/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1beta/test_cloud_controls_partner_core.py @@ -2142,6 +2142,9 @@ def test_list_workloads_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, customer_workloads.Workload) for i in results) @@ -2230,6 +2233,8 @@ async def test_list_workloads_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2998,6 +3003,9 @@ def test_list_customers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, customers.Customer) for i in results) @@ -3086,6 +3094,8 @@ async def test_list_customers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4252,6 +4262,9 @@ def test_list_access_approval_requests_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4347,6 +4360,8 @@ async def test_list_access_approval_requests_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6174,6 +6189,9 @@ def test_list_workloads_rest_pager(transport: str = "rest"): pager = client.list_workloads(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, customer_workloads.Workload) for i in results) @@ -6610,6 +6628,9 @@ def test_list_customers_rest_pager(transport: str = "rest"): pager = client.list_customers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, customers.Customer) for i in results) @@ -7257,6 +7278,9 @@ def test_list_access_approval_requests_rest_pager(transport: str = "rest"): pager = client.list_access_approval_requests(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1beta/test_cloud_controls_partner_monitoring.py b/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1beta/test_cloud_controls_partner_monitoring.py index 40ce9e46ce66..3f0d9ebdc425 100644 --- a/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1beta/test_cloud_controls_partner_monitoring.py +++ b/packages/google-cloud-cloudcontrolspartner/tests/unit/gapic/cloudcontrolspartner_v1beta/test_cloud_controls_partner_monitoring.py @@ -1833,6 +1833,9 @@ def test_list_violations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, violations.Violation) for i in results) @@ -1921,6 +1924,8 @@ async def test_list_violations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2573,6 +2578,9 @@ def test_list_violations_rest_pager(transport: str = "rest"): pager = client.list_violations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, violations.Violation) for i in results) diff --git a/packages/google-cloud-cloudsecuritycompliance/noxfile.py b/packages/google-cloud-cloudsecuritycompliance/noxfile.py index 5f79e1a8c2b5..2be3cddf44c6 100644 --- a/packages/google-cloud-cloudsecuritycompliance/noxfile.py +++ b/packages/google-cloud-cloudsecuritycompliance/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-cloudsecuritycompliance/testing/constraints-3.15.txt b/packages/google-cloud-cloudsecuritycompliance/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-cloudsecuritycompliance/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_audit.py b/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_audit.py index 715ec9979288..ca07b68fd0d3 100644 --- a/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_audit.py +++ b/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_audit.py @@ -2398,6 +2398,9 @@ def test_list_framework_audits_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, audit.FrameworkAudit) for i in results) @@ -2490,6 +2493,8 @@ async def test_list_framework_audits_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3571,6 +3576,9 @@ def test_list_framework_audits_rest_pager(transport: str = "rest"): pager = client.list_framework_audits(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, audit.FrameworkAudit) for i in results) diff --git a/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_config.py b/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_config.py index 38dd8df3938f..5dc045c5f718 100644 --- a/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_config.py +++ b/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_config.py @@ -1631,6 +1631,9 @@ def test_list_frameworks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common.Framework) for i in results) @@ -1719,6 +1722,8 @@ async def test_list_frameworks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3593,6 +3598,9 @@ def test_list_cloud_controls_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common.CloudControl) for i in results) @@ -3685,6 +3693,8 @@ async def test_list_cloud_controls_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5529,6 +5539,9 @@ def test_list_frameworks_rest_pager(transport: str = "rest"): pager = client.list_frameworks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common.Framework) for i in results) @@ -6550,6 +6563,9 @@ def test_list_cloud_controls_rest_pager(transport: str = "rest"): pager = client.list_cloud_controls(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common.CloudControl) for i in results) diff --git a/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_deployment.py b/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_deployment.py index e18ce79b07a0..bb7e88e21e8b 100644 --- a/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_deployment.py +++ b/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_deployment.py @@ -2786,6 +2786,9 @@ def test_list_framework_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployment.FrameworkDeployment) for i in results) @@ -2878,6 +2881,8 @@ async def test_list_framework_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3708,6 +3713,9 @@ def test_list_cloud_control_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployment.CloudControlDeployment) for i in results) @@ -3800,6 +3808,8 @@ async def test_list_cloud_control_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4681,6 +4691,9 @@ def test_list_framework_deployments_rest_pager(transport: str = "rest"): pager = client.list_framework_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployment.FrameworkDeployment) for i in results) @@ -5135,6 +5148,9 @@ def test_list_cloud_control_deployments_rest_pager(transport: str = "rest"): pager = client.list_cloud_control_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployment.CloudControlDeployment) for i in results) diff --git a/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_monitoring.py b/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_monitoring.py index 0be8291c35c7..9f344621595c 100644 --- a/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_monitoring.py +++ b/packages/google-cloud-cloudsecuritycompliance/tests/unit/gapic/cloudsecuritycompliance_v1/test_monitoring.py @@ -1687,6 +1687,9 @@ def test_list_framework_compliance_summaries_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1781,6 +1784,8 @@ async def test_list_framework_compliance_summaries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2240,6 +2245,9 @@ def test_list_finding_summaries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, monitoring.FindingSummary) for i in results) @@ -2332,6 +2340,8 @@ async def test_list_finding_summaries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3174,6 +3184,9 @@ def test_list_control_compliance_summaries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, monitoring.ControlComplianceSummary) for i in results) @@ -3266,6 +3279,8 @@ async def test_list_control_compliance_summaries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3931,6 +3946,9 @@ def test_list_framework_compliance_summaries_rest_pager(transport: str = "rest") pager = client.list_framework_compliance_summaries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4200,6 +4218,9 @@ def test_list_finding_summaries_rest_pager(transport: str = "rest"): pager = client.list_finding_summaries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, monitoring.FindingSummary) for i in results) @@ -4682,6 +4703,9 @@ def test_list_control_compliance_summaries_rest_pager(transport: str = "rest"): pager = client.list_control_compliance_summaries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, monitoring.ControlComplianceSummary) for i in results) diff --git a/packages/google-cloud-commerce-consumer-procurement/noxfile.py b/packages/google-cloud-commerce-consumer-procurement/noxfile.py index 620844bc9d4f..019bbcd5e375 100644 --- a/packages/google-cloud-commerce-consumer-procurement/noxfile.py +++ b/packages/google-cloud-commerce-consumer-procurement/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-commerce-consumer-procurement/testing/constraints-3.15.txt b/packages/google-cloud-commerce-consumer-procurement/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-commerce-consumer-procurement/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-commerce-consumer-procurement/tests/unit/gapic/commerce_consumer_procurement_v1/test_consumer_procurement_service.py b/packages/google-cloud-commerce-consumer-procurement/tests/unit/gapic/commerce_consumer_procurement_v1/test_consumer_procurement_service.py index 8a41703e2452..58a92b5bd374 100644 --- a/packages/google-cloud-commerce-consumer-procurement/tests/unit/gapic/commerce_consumer_procurement_v1/test_consumer_procurement_service.py +++ b/packages/google-cloud-commerce-consumer-procurement/tests/unit/gapic/commerce_consumer_procurement_v1/test_consumer_procurement_service.py @@ -2376,6 +2376,9 @@ def test_list_orders_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, order.Order) for i in results) @@ -2464,6 +2467,8 @@ async def test_list_orders_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3572,6 +3577,9 @@ def test_list_orders_rest_pager(transport: str = "rest"): pager = client.list_orders(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, order.Order) for i in results) diff --git a/packages/google-cloud-commerce-consumer-procurement/tests/unit/gapic/commerce_consumer_procurement_v1/test_license_management_service.py b/packages/google-cloud-commerce-consumer-procurement/tests/unit/gapic/commerce_consumer_procurement_v1/test_license_management_service.py index 2ce4382ae21f..2c960d8f6852 100644 --- a/packages/google-cloud-commerce-consumer-procurement/tests/unit/gapic/commerce_consumer_procurement_v1/test_license_management_service.py +++ b/packages/google-cloud-commerce-consumer-procurement/tests/unit/gapic/commerce_consumer_procurement_v1/test_license_management_service.py @@ -3142,6 +3142,9 @@ def test_enumerate_licensed_users_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3236,6 +3239,8 @@ async def test_enumerate_licensed_users_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4318,6 +4323,9 @@ def test_enumerate_licensed_users_rest_pager(transport: str = "rest"): pager = client.enumerate_licensed_users(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-commerce-consumer-procurement/tests/unit/gapic/commerce_consumer_procurement_v1alpha1/test_consumer_procurement_service.py b/packages/google-cloud-commerce-consumer-procurement/tests/unit/gapic/commerce_consumer_procurement_v1alpha1/test_consumer_procurement_service.py index 6a0530afc768..d927349753eb 100644 --- a/packages/google-cloud-commerce-consumer-procurement/tests/unit/gapic/commerce_consumer_procurement_v1alpha1/test_consumer_procurement_service.py +++ b/packages/google-cloud-commerce-consumer-procurement/tests/unit/gapic/commerce_consumer_procurement_v1alpha1/test_consumer_procurement_service.py @@ -2376,6 +2376,9 @@ def test_list_orders_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, order.Order) for i in results) @@ -2464,6 +2467,8 @@ async def test_list_orders_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3076,6 +3081,9 @@ def test_list_orders_rest_pager(transport: str = "rest"): pager = client.list_orders(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, order.Order) for i in results) diff --git a/packages/google-cloud-common/noxfile.py b/packages/google-cloud-common/noxfile.py index 58d097ef35dc..42d004dcba73 100644 --- a/packages/google-cloud-common/noxfile.py +++ b/packages/google-cloud-common/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-common/testing/constraints-3.15.txt b/packages/google-cloud-common/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-common/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-compute-v1beta/noxfile.py b/packages/google-cloud-compute-v1beta/noxfile.py index b0d0ee4f53ec..8e45173c9a56 100644 --- a/packages/google-cloud-compute-v1beta/noxfile.py +++ b/packages/google-cloud-compute-v1beta/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-compute-v1beta/testing/constraints-3.15.txt b/packages/google-cloud-compute-v1beta/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-compute-v1beta/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_accelerator_types.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_accelerator_types.py index 22b1bdb1a9d2..2594fd154d8e 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_accelerator_types.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_accelerator_types.py @@ -1435,6 +1435,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.AcceleratorTypesScopedList) assert pager.get("h") is None @@ -1917,6 +1920,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.AcceleratorType) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_addresses.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_addresses.py index abee5956b984..811be8dd0b31 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_addresses.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_addresses.py @@ -1385,6 +1385,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.AddressesScopedList) assert pager.get("h") is None @@ -2678,6 +2681,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Address) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_autoscalers.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_autoscalers.py index 14a50574c75a..ff0188fc5d67 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_autoscalers.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_autoscalers.py @@ -1393,6 +1393,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.AutoscalersScopedList) assert pager.get("h") is None @@ -2701,6 +2704,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Autoscaler) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_backend_buckets.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_backend_buckets.py index 598b953145c6..34f60b5c38c6 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_backend_buckets.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_backend_buckets.py @@ -1829,6 +1829,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.BackendBucketsScopedList) assert pager.get("h") is None @@ -3729,6 +3732,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendBucket) for i in results) @@ -3989,6 +3995,9 @@ def test_list_usable_rest_pager(transport: str = "rest"): pager = client.list_usable(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendBucket) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_backend_services.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_backend_services.py index 6c84bf89e5ea..f5ecd2d39364 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_backend_services.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_backend_services.py @@ -1843,6 +1843,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.BackendServicesScopedList) assert pager.get("h") is None @@ -4148,6 +4151,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendService) for i in results) @@ -4408,6 +4414,9 @@ def test_list_usable_rest_pager(transport: str = "rest"): pager = client.list_usable(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendService) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_cross_site_networks.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_cross_site_networks.py index 793b2e39023b..1a741e342215 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_cross_site_networks.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_cross_site_networks.py @@ -2441,6 +2441,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.CrossSiteNetwork) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_disk_types.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_disk_types.py index 0c1694e518f4..60ec625f8204 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_disk_types.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_disk_types.py @@ -1385,6 +1385,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.DiskTypesScopedList) assert pager.get("h") is None @@ -1864,6 +1867,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.DiskType) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_disks.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_disks.py index d18d87c60fed..9fc66d7281c9 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_disks.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_disks.py @@ -1798,6 +1798,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.DisksScopedList) assert pager.get("h") is None @@ -4608,6 +4611,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Disk) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_external_vpn_gateways.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_external_vpn_gateways.py index 54999d028d89..7c902e036cf0 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_external_vpn_gateways.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_external_vpn_gateways.py @@ -2435,6 +2435,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ExternalVpnGateway) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_firewall_policies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_firewall_policies.py index 0c564fea77da..c9436762f777 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_firewall_policies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_firewall_policies.py @@ -4603,6 +4603,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.FirewallPolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_firewalls.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_firewalls.py index eabd1cc62532..b47e5c4577e5 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_firewalls.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_firewalls.py @@ -2355,6 +2355,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Firewall) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_forwarding_rules.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_forwarding_rules.py index 6295a26e5e65..25edf8a8dc4d 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_forwarding_rules.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_forwarding_rules.py @@ -1431,6 +1431,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.ForwardingRulesScopedList) assert pager.get("h") is None @@ -2741,6 +2744,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ForwardingRule) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_future_reservations.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_future_reservations.py index bf8f908e600c..bd52218b4096 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_future_reservations.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_future_reservations.py @@ -1452,6 +1452,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.FutureReservationsScopedList) assert pager.get("h") is None @@ -3192,6 +3195,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.FutureReservation) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_addresses.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_addresses.py index 50bb32e1e479..de7d7178ac8b 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_addresses.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_addresses.py @@ -2395,6 +2395,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Address) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_forwarding_rules.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_forwarding_rules.py index d4be9b6a895c..85f867b1ab4b 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_forwarding_rules.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_forwarding_rules.py @@ -2441,6 +2441,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ForwardingRule) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_network_endpoint_groups.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_network_endpoint_groups.py index 80dece0799b5..3027c1579fd4 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_network_endpoint_groups.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_network_endpoint_groups.py @@ -3340,6 +3340,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NetworkEndpointGroup) for i in results) @@ -3623,6 +3626,9 @@ def test_list_network_endpoints_rest_pager(transport: str = "rest"): pager = client.list_network_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_operations.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_operations.py index 2757febe3e0c..ebeab388b675 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_operations.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_operations.py @@ -1433,6 +1433,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.OperationsScopedList) assert pager.get("h") is None @@ -2080,6 +2083,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Operation) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_organization_operations.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_organization_operations.py index e459ff13fea9..0658795f6b81 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_organization_operations.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_organization_operations.py @@ -1697,6 +1697,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Operation) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_public_delegated_prefixes.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_public_delegated_prefixes.py index 248527fc81cf..700377d80e07 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_public_delegated_prefixes.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_public_delegated_prefixes.py @@ -2495,6 +2495,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PublicDelegatedPrefix) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_vm_extension_policies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_vm_extension_policies.py index 2f1a45637fa0..07ee21ac20d2 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_vm_extension_policies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_global_vm_extension_policies.py @@ -1478,6 +1478,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.VmExtensionPoliciesScopedList) assert pager.get("h") is None @@ -2763,6 +2766,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.GlobalVmExtensionPolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_health_checks.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_health_checks.py index 6a91b434015e..fedae9d6bf7e 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_health_checks.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_health_checks.py @@ -1400,6 +1400,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.HealthChecksScopedList) assert pager.get("h") is None @@ -2642,6 +2645,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.HealthCheck) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_images.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_images.py index 67b1affb39d2..2a039affeb20 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_images.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_images.py @@ -3143,6 +3143,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Image) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_group_manager_resize_requests.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_group_manager_resize_requests.py index 77a2d11cc459..80fcdbe21209 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_group_manager_resize_requests.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_group_manager_resize_requests.py @@ -3069,6 +3069,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_group_managers.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_group_managers.py index 7bfa1915f68e..3acef71cea5d 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_group_managers.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_group_managers.py @@ -1899,6 +1899,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.InstanceGroupManagersScopedList) assert pager.get("h") is None @@ -5699,6 +5702,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceGroupManager) for i in results) @@ -5989,6 +5995,9 @@ def test_list_errors_rest_pager(transport: str = "rest"): pager = client.list_errors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceManagedByIgmError) for i in results) @@ -6287,6 +6296,9 @@ def test_list_managed_instances_rest_pager(transport: str = "rest"): pager = client.list_managed_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ManagedInstance) for i in results) @@ -6585,6 +6597,9 @@ def test_list_per_instance_configs_rest_pager(transport: str = "rest"): pager = client.list_per_instance_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PerInstanceConfig) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_groups.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_groups.py index c395218bc9ac..16fe50f98ae6 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_groups.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_groups.py @@ -1851,6 +1851,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.InstanceGroupsScopedList) assert pager.get("h") is None @@ -3159,6 +3162,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceGroup) for i in results) @@ -3460,6 +3466,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceWithNamedPorts) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_templates.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_templates.py index 4866b5f6a9b0..3d5ffbedd079 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_templates.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instance_templates.py @@ -1446,6 +1446,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.InstanceTemplatesScopedList) assert pager.get("h") is None @@ -2898,6 +2901,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceTemplate) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instances.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instances.py index fbdbfbcdd131..268f6235b18d 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instances.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instances.py @@ -2770,6 +2770,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.InstancesScopedList) assert pager.get("h") is None @@ -8154,6 +8157,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Instance) for i in results) @@ -8440,6 +8446,9 @@ def test_list_referrers_rest_pager(transport: str = "rest"): pager = client.list_referrers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Reference) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instant_snapshot_groups.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instant_snapshot_groups.py index a166cb608d20..d9f60e021842 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instant_snapshot_groups.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instant_snapshot_groups.py @@ -2722,6 +2722,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstantSnapshotGroup) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instant_snapshots.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instant_snapshots.py index 1c02af7b2ec6..ee78946ba02d 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instant_snapshots.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_instant_snapshots.py @@ -1437,6 +1437,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.InstantSnapshotsScopedList) assert pager.get("h") is None @@ -2950,6 +2953,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstantSnapshot) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_attachment_groups.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_attachment_groups.py index cd2cb840383c..56fff95f6249 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_attachment_groups.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_attachment_groups.py @@ -2938,6 +2938,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InterconnectAttachmentGroup) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_attachments.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_attachments.py index 3cf5f1caf653..1c21c313a1f0 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_attachments.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_attachments.py @@ -1465,6 +1465,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.InterconnectAttachmentsScopedList) assert pager.get("h") is None @@ -2809,6 +2812,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InterconnectAttachment) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_groups.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_groups.py index a12a8d9f2805..d8691522fdd5 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_groups.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_groups.py @@ -3270,6 +3270,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InterconnectGroup) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_locations.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_locations.py index e95b7a015f22..368f7696dfe4 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_locations.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_locations.py @@ -1643,6 +1643,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InterconnectLocation) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_remote_locations.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_remote_locations.py index 7bac86230b3a..df4fead43477 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_remote_locations.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnect_remote_locations.py @@ -1694,6 +1694,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InterconnectRemoteLocation) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnects.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnects.py index a5cb974939da..ab2e7c2fe113 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnects.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_interconnects.py @@ -2763,6 +2763,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Interconnect) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_licenses.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_licenses.py index ec14f2e2bb28..8dd6aad2c46e 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_licenses.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_licenses.py @@ -2590,6 +2590,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.License) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_machine_images.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_machine_images.py index 7841f5641454..2597f9873e19 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_machine_images.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_machine_images.py @@ -2600,6 +2600,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.MachineImage) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_machine_types.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_machine_types.py index 7487efd6622f..567d47f0af18 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_machine_types.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_machine_types.py @@ -1396,6 +1396,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.MachineTypesScopedList) assert pager.get("h") is None @@ -1878,6 +1881,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.MachineType) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_attachments.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_attachments.py index 081c5ac74def..9c96d9225c17 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_attachments.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_attachments.py @@ -1449,6 +1449,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NetworkAttachmentsScopedList) assert pager.get("h") is None @@ -2982,6 +2985,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NetworkAttachment) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_edge_security_services.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_edge_security_services.py index f2de45fa0242..0f1d4242b672 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_edge_security_services.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_edge_security_services.py @@ -1503,6 +1503,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NetworkEdgeSecurityServicesScopedList) assert pager.get("h") is None diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_endpoint_groups.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_endpoint_groups.py index 03c020bb96c2..b7ece7554c6f 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_endpoint_groups.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_endpoint_groups.py @@ -1461,6 +1461,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NetworkEndpointGroupsScopedList) assert pager.get("h") is None @@ -3679,6 +3682,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NetworkEndpointGroup) for i in results) @@ -4008,6 +4014,9 @@ def test_list_network_endpoints_rest_pager(transport: str = "rest"): pager = client.list_network_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_firewall_policies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_firewall_policies.py index 5ab74aaa9578..b67e0f8232d7 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_firewall_policies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_firewall_policies.py @@ -2779,6 +2779,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.FirewallPoliciesScopedList) assert pager.get("h") is None @@ -5248,6 +5251,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.FirewallPolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_profiles.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_profiles.py index 212b28ab1afb..caf859e141ab 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_profiles.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_network_profiles.py @@ -1613,6 +1613,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NetworkProfile) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_networks.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_networks.py index 643e4cafcf5a..459b701e631c 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_networks.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_networks.py @@ -3381,6 +3381,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Network) for i in results) @@ -3664,6 +3667,9 @@ def test_list_peering_routes_rest_pager(transport: str = "rest"): pager = client.list_peering_routes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ExchangedPeeringRoute) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_node_groups.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_node_groups.py index c23e466cc0f3..2fd1de9cda9a 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_node_groups.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_node_groups.py @@ -1821,6 +1821,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NodeGroupsScopedList) assert pager.get("h") is None @@ -3811,6 +3814,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NodeGroup) for i in results) @@ -4097,6 +4103,9 @@ def test_list_nodes_rest_pager(transport: str = "rest"): pager = client.list_nodes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NodeGroupNode) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_node_templates.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_node_templates.py index 57a66957e77a..19e80c0cea75 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_node_templates.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_node_templates.py @@ -1413,6 +1413,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NodeTemplatesScopedList) assert pager.get("h") is None @@ -2926,6 +2929,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NodeTemplate) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_node_types.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_node_types.py index ca4bb7a68e8e..c9e24813deff 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_node_types.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_node_types.py @@ -1385,6 +1385,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NodeTypesScopedList) assert pager.get("h") is None @@ -1864,6 +1867,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NodeType) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_organization_security_policies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_organization_security_policies.py index 033507393fbb..efefa9947fc6 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_organization_security_policies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_organization_security_policies.py @@ -3861,6 +3861,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SecurityPolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_packet_mirrorings.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_packet_mirrorings.py index 4e2a0e133358..758db0d9a4bb 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_packet_mirrorings.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_packet_mirrorings.py @@ -1437,6 +1437,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.PacketMirroringsScopedList) assert pager.get("h") is None @@ -2753,6 +2756,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PacketMirroring) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_preview_features.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_preview_features.py index f0e3ebba5661..7768e4270374 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_preview_features.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_preview_features.py @@ -1613,6 +1613,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PreviewFeature) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_projects.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_projects.py index 78c9da19cbd8..36dc1b1b4189 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_projects.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_projects.py @@ -3279,6 +3279,9 @@ def test_get_xpn_resources_rest_pager(transport: str = "rest"): pager = client.get_xpn_resources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.XpnResourceId) for i in results) @@ -3553,6 +3556,9 @@ def test_list_xpn_hosts_rest_pager(transport: str = "rest"): pager = client.list_xpn_hosts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Project) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_public_advertised_prefixes.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_public_advertised_prefixes.py index 60322e34a279..f07e88f6bb95 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_public_advertised_prefixes.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_public_advertised_prefixes.py @@ -2857,6 +2857,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PublicAdvertisedPrefix) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_public_delegated_prefixes.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_public_delegated_prefixes.py index a5d7cfef9710..b26ffe415536 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_public_delegated_prefixes.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_public_delegated_prefixes.py @@ -1465,6 +1465,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.PublicDelegatedPrefixesScopedList) assert pager.get("h") is None @@ -3199,6 +3202,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PublicDelegatedPrefix) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_autoscalers.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_autoscalers.py index d69e31197964..2841c0234bc6 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_autoscalers.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_autoscalers.py @@ -2479,6 +2479,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Autoscaler) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_backend_buckets.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_backend_buckets.py index 5182d5256c97..9ca5581018d8 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_backend_buckets.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_backend_buckets.py @@ -2720,6 +2720,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendBucket) for i in results) @@ -2991,6 +2994,9 @@ def test_list_usable_rest_pager(transport: str = "rest"): pager = client.list_usable(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendBucket) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_backend_services.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_backend_services.py index 281e3ba07707..ee085895921a 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_backend_services.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_backend_services.py @@ -2913,6 +2913,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendService) for i in results) @@ -3184,6 +3187,9 @@ def test_list_usable_rest_pager(transport: str = "rest"): pager = client.list_usable(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendService) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_commitments.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_commitments.py index 0144e5b3f62d..6a6e36bfdc96 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_commitments.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_commitments.py @@ -1443,6 +1443,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.CommitmentsScopedList) assert pager.get("h") is None @@ -2329,6 +2332,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Commitment) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_composite_health_checks.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_composite_health_checks.py index 70040505c722..5206f370007c 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_composite_health_checks.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_composite_health_checks.py @@ -1500,6 +1500,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.CompositeHealthChecksScopedList) assert pager.get("h") is None @@ -3019,6 +3022,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.CompositeHealthCheck) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_disk_types.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_disk_types.py index 09906297d1af..c0543a813ddc 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_disk_types.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_disk_types.py @@ -1633,6 +1633,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.DiskType) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_disks.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_disks.py index b53d4bac735f..0e8540f516aa 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_disks.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_disks.py @@ -3904,6 +3904,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Disk) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_aggregation_policies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_aggregation_policies.py index a37f374a52d4..29ed985244e5 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_aggregation_policies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_aggregation_policies.py @@ -1530,6 +1530,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.HealthAggregationPoliciesScopedList) assert pager.get("h") is None @@ -2857,6 +2860,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.HealthAggregationPolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_check_services.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_check_services.py index 98c0464cebda..da588aefab42 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_check_services.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_check_services.py @@ -1476,6 +1476,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.HealthCheckServicesScopedList) assert pager.get("h") is None @@ -2792,6 +2795,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.HealthCheckService) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_checks.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_checks.py index 20fb0f1e4b89..9b3accd871f1 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_checks.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_checks.py @@ -2475,6 +2475,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.HealthCheck) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_sources.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_sources.py index 095859c08748..9dbde932af07 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_sources.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_health_sources.py @@ -1459,6 +1459,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.HealthSourcesScopedList) assert pager.get("h") is None @@ -2974,6 +2977,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.HealthSource) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_group_manager_resize_requests.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_group_manager_resize_requests.py index baf83fffc68c..739f9e8361a1 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_group_manager_resize_requests.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_group_manager_resize_requests.py @@ -3070,6 +3070,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_group_managers.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_group_managers.py index b47d6acc1cf5..52b96062e94d 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_group_managers.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_group_managers.py @@ -5226,6 +5226,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceGroupManager) for i in results) @@ -5519,6 +5522,9 @@ def test_list_errors_rest_pager(transport: str = "rest"): pager = client.list_errors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceManagedByIgmError) for i in results) @@ -5817,6 +5823,9 @@ def test_list_managed_instances_rest_pager(transport: str = "rest"): pager = client.list_managed_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ManagedInstance) for i in results) @@ -6117,6 +6126,9 @@ def test_list_per_instance_configs_rest_pager(transport: str = "rest"): pager = client.list_per_instance_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PerInstanceConfig) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_groups.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_groups.py index 641ad716277e..d54b741a0f9a 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_groups.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_groups.py @@ -1665,6 +1665,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceGroup) for i in results) @@ -1966,6 +1969,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceWithNamedPorts) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_templates.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_templates.py index 2ed8ed37de24..e9f0f2a53557 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_templates.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instance_templates.py @@ -2508,6 +2508,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceTemplate) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instant_snapshot_groups.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instant_snapshot_groups.py index 89e8b46c7493..4c7740f5dfc4 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instant_snapshot_groups.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instant_snapshot_groups.py @@ -2763,6 +2763,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstantSnapshotGroup) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instant_snapshots.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instant_snapshots.py index 155b4c2dbbe5..f3a1983e7d13 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instant_snapshots.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_instant_snapshots.py @@ -2706,6 +2706,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstantSnapshot) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_multi_mig_members.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_multi_mig_members.py index a36c0307d68c..5173f50278e1 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_multi_mig_members.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_multi_mig_members.py @@ -1690,6 +1690,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.MultiMigMember) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_multi_migs.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_multi_migs.py index 20b10de5bd23..69aae3322545 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_multi_migs.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_multi_migs.py @@ -2461,6 +2461,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.MultiMig) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_network_endpoint_groups.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_network_endpoint_groups.py index f48b7d935c50..72db1ef7ae92 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_network_endpoint_groups.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_network_endpoint_groups.py @@ -3442,6 +3442,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NetworkEndpointGroup) for i in results) @@ -3740,6 +3743,9 @@ def test_list_network_endpoints_rest_pager(transport: str = "rest"): pager = client.list_network_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_network_firewall_policies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_network_firewall_policies.py index 7c75f0f5353e..fee272b5b323 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_network_firewall_policies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_network_firewall_policies.py @@ -4762,6 +4762,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.FirewallPolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_network_policies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_network_policies.py index 2c0745b79289..353b4069b65f 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_network_policies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_network_policies.py @@ -2353,6 +2353,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NetworkPoliciesScopedList) assert pager.get("h") is None @@ -4102,6 +4105,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NetworkPolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_notification_endpoints.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_notification_endpoints.py index 479301c95d13..fb35c943f497 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_notification_endpoints.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_notification_endpoints.py @@ -1500,6 +1500,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NotificationEndpointsScopedList) assert pager.get("h") is None @@ -2816,6 +2819,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NotificationEndpoint) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_operations.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_operations.py index 4d2d0d8e4fc4..34885676a46c 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_operations.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_operations.py @@ -1840,6 +1840,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Operation) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_security_policies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_security_policies.py index 1acfbfd1172d..f6d6aea02077 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_security_policies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_security_policies.py @@ -3176,6 +3176,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SecurityPolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_snapshots.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_snapshots.py index 16f6aebb2be5..a2974c8028f4 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_snapshots.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_snapshots.py @@ -2658,6 +2658,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Snapshot) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_ssl_certificates.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_ssl_certificates.py index 1dda0261ff89..0aa32dd7f694 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_ssl_certificates.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_ssl_certificates.py @@ -2497,6 +2497,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SslCertificate) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_ssl_policies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_ssl_policies.py index 0472d4732b07..5a1b5773db48 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_ssl_policies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_ssl_policies.py @@ -2475,6 +2475,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SslPolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_target_http_proxies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_target_http_proxies.py index cb216f5f457b..e2aa88d75494 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_target_http_proxies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_target_http_proxies.py @@ -2501,6 +2501,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetHttpProxy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_target_https_proxies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_target_https_proxies.py index 07ce34bad37e..24ef37ff0925 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_target_https_proxies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_target_https_proxies.py @@ -2507,6 +2507,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetHttpsProxy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_target_tcp_proxies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_target_tcp_proxies.py index d6853a756112..0af478c96952 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_target_tcp_proxies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_target_tcp_proxies.py @@ -2501,6 +2501,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetTcpProxy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_url_maps.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_url_maps.py index baefae2eaa84..91b7b33850ca 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_url_maps.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_url_maps.py @@ -2881,6 +2881,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.UrlMap) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_zones.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_zones.py index 4a1c1a3c24c0..311bd232cd1e 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_zones.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_region_zones.py @@ -1396,6 +1396,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Zone) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_regions.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_regions.py index 2e551c6270e0..01404990460c 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_regions.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_regions.py @@ -1552,6 +1552,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Region) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservation_blocks.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservation_blocks.py index f8f0f122cda2..5650e86e2f2f 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservation_blocks.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservation_blocks.py @@ -1889,6 +1889,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ReservationBlock) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservation_slots.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservation_slots.py index b39b23f01009..92c42e402280 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservation_slots.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservation_slots.py @@ -2116,6 +2116,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ReservationSlot) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservation_sub_blocks.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservation_sub_blocks.py index 041ef1014b3c..280929dc3c67 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservation_sub_blocks.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservation_sub_blocks.py @@ -2355,6 +2355,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ReservationSubBlock) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservations.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservations.py index 558ad08ae301..5924aba25405 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservations.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_reservations.py @@ -1398,6 +1398,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.ReservationsScopedList) assert pager.get("h") is None @@ -2919,6 +2922,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Reservation) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_resource_policies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_resource_policies.py index 3d0a9cf2d15a..efc6b129bb28 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_resource_policies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_resource_policies.py @@ -1437,6 +1437,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.ResourcePoliciesScopedList) assert pager.get("h") is None @@ -2950,6 +2953,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ResourcePolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_rollout_plans.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_rollout_plans.py index d62bc6c3c51b..20a21c27bd2a 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_rollout_plans.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_rollout_plans.py @@ -2372,6 +2372,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.RolloutPlan) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_rollouts.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_rollouts.py index f0b0d41c39ae..86f417fc2d43 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_rollouts.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_rollouts.py @@ -2368,6 +2368,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Rollout) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_routers.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_routers.py index 60368af286ef..495e1e25959e 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_routers.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_routers.py @@ -1371,6 +1371,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.RoutersScopedList) assert pager.get("h") is None @@ -3585,6 +3588,9 @@ def test_get_nat_mapping_info_rest_pager(transport: str = "rest"): pager = client.get_nat_mapping_info(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.VmEndpointNatMappings) for i in results) @@ -4674,6 +4680,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Router) for i in results) @@ -4970,6 +4979,9 @@ def test_list_bgp_routes_rest_pager(transport: str = "rest"): pager = client.list_bgp_routes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BgpRoute) for i in results) @@ -5256,6 +5268,9 @@ def test_list_named_sets_rest_pager(transport: str = "rest"): pager = client.list_named_sets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NamedSet) for i in results) @@ -5546,6 +5561,9 @@ def test_list_route_policies_rest_pager(transport: str = "rest"): pager = client.list_route_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.RoutePolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_routes.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_routes.py index c5d6a911d9ca..2b19858a6fc4 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_routes.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_routes.py @@ -2333,6 +2333,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Route) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_security_policies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_security_policies.py index 24b0776215a8..2b5afdf0d7b0 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_security_policies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_security_policies.py @@ -1849,6 +1849,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.SecurityPoliciesScopedList) assert pager.get("h") is None @@ -3329,6 +3332,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SecurityPolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_service_attachments.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_service_attachments.py index 28c6da3abcc6..eaee7cd70e8c 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_service_attachments.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_service_attachments.py @@ -1449,6 +1449,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.ServiceAttachmentsScopedList) assert pager.get("h") is None @@ -2984,6 +2987,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ServiceAttachment) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_snapshot_groups.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_snapshot_groups.py index 9ab095946f5a..99d119474126 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_snapshot_groups.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_snapshot_groups.py @@ -2583,6 +2583,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SnapshotGroup) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_snapshots.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_snapshots.py index f07c302ada8b..91a33eca579b 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_snapshots.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_snapshots.py @@ -1385,6 +1385,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.SnapshotsScopedList) assert pager.get("h") is None @@ -2814,6 +2817,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Snapshot) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_ssl_certificates.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_ssl_certificates.py index 65235f416393..20d2602eaa55 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_ssl_certificates.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_ssl_certificates.py @@ -1431,6 +1431,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.SslCertificatesScopedList) assert pager.get("h") is None @@ -2681,6 +2684,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SslCertificate) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_ssl_policies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_ssl_policies.py index a626ee50d4e8..4351b323c48d 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_ssl_policies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_ssl_policies.py @@ -1393,6 +1393,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.SslPoliciesScopedList) assert pager.get("h") is None @@ -2639,6 +2642,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SslPolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_storage_pool_types.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_storage_pool_types.py index f970444108a5..8e3ee5e297db 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_storage_pool_types.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_storage_pool_types.py @@ -1435,6 +1435,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.StoragePoolTypesScopedList) assert pager.get("h") is None @@ -1917,6 +1920,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.StoragePoolType) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_storage_pools.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_storage_pools.py index 0ee8123bbe1e..65791b90bd2b 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_storage_pools.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_storage_pools.py @@ -1398,6 +1398,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.StoragePoolsScopedList) assert pager.get("h") is None @@ -2911,6 +2914,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.StoragePool) for i in results) @@ -3197,6 +3203,9 @@ def test_list_disks_rest_pager(transport: str = "rest"): pager = client.list_disks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.StoragePoolDisk) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_subnetworks.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_subnetworks.py index f603dd5200a5..5cbf811b2a75 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_subnetworks.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_subnetworks.py @@ -1395,6 +1395,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.SubnetworksScopedList) assert pager.get("h") is None @@ -3354,6 +3357,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Subnetwork) for i in results) @@ -3618,6 +3624,9 @@ def test_list_usable_rest_pager(transport: str = "rest"): pager = client.list_usable(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.UsableSubnetwork) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_grpc_proxies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_grpc_proxies.py index 7b3c5b23ab49..4dfe21c0c48f 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_grpc_proxies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_grpc_proxies.py @@ -2417,6 +2417,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetGrpcProxy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_http_proxies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_http_proxies.py index 6248ac48b451..5baf95f17fc9 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_http_proxies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_http_proxies.py @@ -1445,6 +1445,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.TargetHttpProxiesScopedList) assert pager.get("h") is None @@ -2695,6 +2698,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetHttpProxy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_https_proxies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_https_proxies.py index fcf61067982c..e2e42a5bc9c0 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_https_proxies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_https_proxies.py @@ -1449,6 +1449,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.TargetHttpsProxiesScopedList) assert pager.get("h") is None @@ -2703,6 +2706,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetHttpsProxy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_instances.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_instances.py index 6707993e39d0..754bfe8baf05 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_instances.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_instances.py @@ -1431,6 +1431,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.TargetInstancesScopedList) assert pager.get("h") is None @@ -2739,6 +2742,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetInstance) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_pools.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_pools.py index 9ae9b01dca3e..436754ede29d 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_pools.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_pools.py @@ -2273,6 +2273,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.TargetPoolsScopedList) assert pager.get("h") is None @@ -3784,6 +3787,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetPool) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_ssl_proxies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_ssl_proxies.py index d8bf5462473f..7e12f83cca4f 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_ssl_proxies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_ssl_proxies.py @@ -2409,6 +2409,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetSslProxy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_tcp_proxies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_tcp_proxies.py index 2d9db5c0d821..5e2f3ccee966 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_tcp_proxies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_tcp_proxies.py @@ -1437,6 +1437,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.TargetTcpProxiesScopedList) assert pager.get("h") is None @@ -2687,6 +2690,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetTcpProxy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_vpn_gateways.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_vpn_gateways.py index 735721479d18..0c1cc4964c5b 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_vpn_gateways.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_target_vpn_gateways.py @@ -1445,6 +1445,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.TargetVpnGatewaysScopedList) assert pager.get("h") is None @@ -2757,6 +2760,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetVpnGateway) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_url_maps.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_url_maps.py index faaea38b8120..1c20ef2120c1 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_url_maps.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_url_maps.py @@ -1373,6 +1373,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.UrlMapsScopedList) assert pager.get("h") is None @@ -3032,6 +3035,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.UrlMap) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_vpn_gateways.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_vpn_gateways.py index e3f5513bb0b2..1d797bfc8d00 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_vpn_gateways.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_vpn_gateways.py @@ -1393,6 +1393,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.VpnGatewaysScopedList) assert pager.get("h") is None @@ -2904,6 +2907,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.VpnGateway) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_vpn_tunnels.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_vpn_tunnels.py index 69d8a264221d..11f92efc2d49 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_vpn_tunnels.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_vpn_tunnels.py @@ -1389,6 +1389,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.VpnTunnelsScopedList) assert pager.get("h") is None @@ -2682,6 +2685,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.VpnTunnel) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_wire_groups.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_wire_groups.py index 4426bcf6e1ee..5a64aac4a32f 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_wire_groups.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_wire_groups.py @@ -2429,6 +2429,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.WireGroup) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_zone_operations.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_zone_operations.py index 8c9857f8302f..eeb2ebe1afbf 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_zone_operations.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_zone_operations.py @@ -1820,6 +1820,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Operation) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_zone_vm_extension_policies.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_zone_vm_extension_policies.py index 9d238c93006e..260a2343cbd0 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_zone_vm_extension_policies.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_zone_vm_extension_policies.py @@ -2501,6 +2501,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.VmExtensionPolicy) for i in results) diff --git a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_zones.py b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_zones.py index 5921b45843e0..8a40950c4309 100644 --- a/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_zones.py +++ b/packages/google-cloud-compute-v1beta/tests/unit/gapic/compute_v1beta/test_zones.py @@ -1541,6 +1541,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Zone) for i in results) diff --git a/packages/google-cloud-compute/noxfile.py b/packages/google-cloud-compute/noxfile.py index e4103b0c9ffb..ebf00adf7e3b 100644 --- a/packages/google-cloud-compute/noxfile.py +++ b/packages/google-cloud-compute/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-compute/testing/constraints-3.15.txt b/packages/google-cloud-compute/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-compute/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_accelerator_types.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_accelerator_types.py index 99a1f52f88ad..97aab125859f 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_accelerator_types.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_accelerator_types.py @@ -1435,6 +1435,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.AcceleratorTypesScopedList) assert pager.get("h") is None @@ -1917,6 +1920,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.AcceleratorType) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_addresses.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_addresses.py index 62df4ab7a6af..368a0c2e4ce8 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_addresses.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_addresses.py @@ -1385,6 +1385,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.AddressesScopedList) assert pager.get("h") is None @@ -2678,6 +2681,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Address) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_autoscalers.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_autoscalers.py index d5866a5d78c9..69897747bd58 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_autoscalers.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_autoscalers.py @@ -1393,6 +1393,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.AutoscalersScopedList) assert pager.get("h") is None @@ -2701,6 +2704,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Autoscaler) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_backend_buckets.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_backend_buckets.py index e6d3a673c756..4307ebcccdd3 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_backend_buckets.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_backend_buckets.py @@ -1829,6 +1829,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.BackendBucketsScopedList) assert pager.get("h") is None @@ -3729,6 +3732,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendBucket) for i in results) @@ -3989,6 +3995,9 @@ def test_list_usable_rest_pager(transport: str = "rest"): pager = client.list_usable(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendBucket) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_backend_services.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_backend_services.py index 95ab9a564e58..e973881bd118 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_backend_services.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_backend_services.py @@ -1843,6 +1843,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.BackendServicesScopedList) assert pager.get("h") is None @@ -4148,6 +4151,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendService) for i in results) @@ -4408,6 +4414,9 @@ def test_list_usable_rest_pager(transport: str = "rest"): pager = client.list_usable(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendService) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_cross_site_networks.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_cross_site_networks.py index ec43daf337d6..9ed1647c1135 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_cross_site_networks.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_cross_site_networks.py @@ -2441,6 +2441,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.CrossSiteNetwork) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_disk_types.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_disk_types.py index 5eb9d011281c..6c0be676a1b3 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_disk_types.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_disk_types.py @@ -1385,6 +1385,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.DiskTypesScopedList) assert pager.get("h") is None @@ -1864,6 +1867,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.DiskType) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_disks.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_disks.py index 0caf1ff58f10..ed95345f9b08 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_disks.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_disks.py @@ -1798,6 +1798,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.DisksScopedList) assert pager.get("h") is None @@ -4608,6 +4611,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Disk) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_external_vpn_gateways.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_external_vpn_gateways.py index b5c9cc513298..8bde17b37e2b 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_external_vpn_gateways.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_external_vpn_gateways.py @@ -2435,6 +2435,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ExternalVpnGateway) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_firewall_policies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_firewall_policies.py index b06a943f8aec..7160dfe2aabd 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_firewall_policies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_firewall_policies.py @@ -4008,6 +4008,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.FirewallPolicy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_firewalls.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_firewalls.py index 59ebb116a36c..30c4714c92ec 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_firewalls.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_firewalls.py @@ -2355,6 +2355,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Firewall) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_forwarding_rules.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_forwarding_rules.py index 5fd572188039..aaa84c61f17c 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_forwarding_rules.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_forwarding_rules.py @@ -1431,6 +1431,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.ForwardingRulesScopedList) assert pager.get("h") is None @@ -2739,6 +2742,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ForwardingRule) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_future_reservations.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_future_reservations.py index 41b994261459..6ed4ced2e1c5 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_future_reservations.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_future_reservations.py @@ -1452,6 +1452,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.FutureReservationsScopedList) assert pager.get("h") is None @@ -3216,6 +3219,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.FutureReservation) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_addresses.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_addresses.py index 1552af617d74..9c9ae9a584eb 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_addresses.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_addresses.py @@ -2395,6 +2395,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Address) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_forwarding_rules.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_forwarding_rules.py index fdffa23f7ea5..567a59f044c5 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_forwarding_rules.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_forwarding_rules.py @@ -2439,6 +2439,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ForwardingRule) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_network_endpoint_groups.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_network_endpoint_groups.py index f6765d4a0728..520657a045bf 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_network_endpoint_groups.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_network_endpoint_groups.py @@ -3340,6 +3340,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NetworkEndpointGroup) for i in results) @@ -3623,6 +3626,9 @@ def test_list_network_endpoints_rest_pager(transport: str = "rest"): pager = client.list_network_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_operations.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_operations.py index 63875d1534e5..fd2abfb3facb 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_operations.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_operations.py @@ -1433,6 +1433,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.OperationsScopedList) assert pager.get("h") is None @@ -2080,6 +2083,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Operation) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_organization_operations.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_organization_operations.py index 8b98b994c752..2ace93aa7f29 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_organization_operations.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_organization_operations.py @@ -1697,6 +1697,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Operation) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_public_delegated_prefixes.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_public_delegated_prefixes.py index 5062ed56e923..d70f801ecc65 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_public_delegated_prefixes.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_public_delegated_prefixes.py @@ -2495,6 +2495,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PublicDelegatedPrefix) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_vm_extension_policies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_vm_extension_policies.py index a1fc0366a889..2184c4f365c4 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_vm_extension_policies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_global_vm_extension_policies.py @@ -1478,6 +1478,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.VmExtensionPoliciesScopedList) assert pager.get("h") is None @@ -2763,6 +2766,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.GlobalVmExtensionPolicy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_health_checks.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_health_checks.py index 63f6029b1754..2b938cc94b4c 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_health_checks.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_health_checks.py @@ -1400,6 +1400,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.HealthChecksScopedList) assert pager.get("h") is None @@ -2642,6 +2645,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.HealthCheck) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_images.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_images.py index f7da36f26890..f0696595e17f 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_images.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_images.py @@ -3141,6 +3141,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Image) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_group_manager_resize_requests.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_group_manager_resize_requests.py index de0dcd08fb49..902236aa74c6 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_group_manager_resize_requests.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_group_manager_resize_requests.py @@ -3069,6 +3069,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_group_managers.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_group_managers.py index 95f62a989def..f42eb8ceb534 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_group_managers.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_group_managers.py @@ -1899,6 +1899,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.InstanceGroupManagersScopedList) assert pager.get("h") is None @@ -4987,6 +4990,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceGroupManager) for i in results) @@ -5277,6 +5283,9 @@ def test_list_errors_rest_pager(transport: str = "rest"): pager = client.list_errors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceManagedByIgmError) for i in results) @@ -5575,6 +5584,9 @@ def test_list_managed_instances_rest_pager(transport: str = "rest"): pager = client.list_managed_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ManagedInstance) for i in results) @@ -5873,6 +5885,9 @@ def test_list_per_instance_configs_rest_pager(transport: str = "rest"): pager = client.list_per_instance_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PerInstanceConfig) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_groups.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_groups.py index cfec3448dd89..5cc7e43d6f85 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_groups.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_groups.py @@ -1851,6 +1851,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.InstanceGroupsScopedList) assert pager.get("h") is None @@ -3159,6 +3162,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceGroup) for i in results) @@ -3460,6 +3466,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceWithNamedPorts) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_templates.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_templates.py index 5687586225e5..8d2e0650e860 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_templates.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instance_templates.py @@ -1445,6 +1445,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.InstanceTemplatesScopedList) assert pager.get("h") is None @@ -2893,6 +2896,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceTemplate) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instances.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instances.py index 148ff1da7bc9..b3b48b72bcde 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instances.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instances.py @@ -2769,6 +2769,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.InstancesScopedList) assert pager.get("h") is None @@ -7712,6 +7715,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Instance) for i in results) @@ -7998,6 +8004,9 @@ def test_list_referrers_rest_pager(transport: str = "rest"): pager = client.list_referrers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Reference) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instant_snapshot_groups.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instant_snapshot_groups.py index 18ca39521d3e..39515e29723a 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instant_snapshot_groups.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instant_snapshot_groups.py @@ -2722,6 +2722,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstantSnapshotGroup) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instant_snapshots.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instant_snapshots.py index 83a9ddef8cdc..97bfe4137745 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instant_snapshots.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_instant_snapshots.py @@ -1437,6 +1437,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.InstantSnapshotsScopedList) assert pager.get("h") is None @@ -2950,6 +2953,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstantSnapshot) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_attachment_groups.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_attachment_groups.py index f515b794d4a6..6c156c728640 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_attachment_groups.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_attachment_groups.py @@ -2938,6 +2938,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InterconnectAttachmentGroup) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_attachments.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_attachments.py index a223032c05e3..667b5b0f38c7 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_attachments.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_attachments.py @@ -1465,6 +1465,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.InterconnectAttachmentsScopedList) assert pager.get("h") is None @@ -2809,6 +2812,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InterconnectAttachment) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_groups.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_groups.py index fe728ac9a2dd..b50cd6294c1b 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_groups.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_groups.py @@ -3270,6 +3270,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InterconnectGroup) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_locations.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_locations.py index b0decc0c5294..7a8515e46014 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_locations.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_locations.py @@ -1643,6 +1643,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InterconnectLocation) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_remote_locations.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_remote_locations.py index cb327677a0e4..4c5723229708 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_remote_locations.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnect_remote_locations.py @@ -1694,6 +1694,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InterconnectRemoteLocation) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnects.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnects.py index f6666abd4803..7ea0234d6b5b 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnects.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_interconnects.py @@ -2763,6 +2763,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Interconnect) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_licenses.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_licenses.py index 2cbc54d2bdbf..f644c5df4023 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_licenses.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_licenses.py @@ -2583,6 +2583,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.License) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_machine_images.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_machine_images.py index 497bf9f25d7c..6af9533658ab 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_machine_images.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_machine_images.py @@ -2599,6 +2599,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.MachineImage) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_machine_types.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_machine_types.py index 4c3c8dbf9610..9bd5eabba54a 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_machine_types.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_machine_types.py @@ -1396,6 +1396,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.MachineTypesScopedList) assert pager.get("h") is None @@ -1878,6 +1881,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.MachineType) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_attachments.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_attachments.py index c50bd38c6c68..dab55632eae7 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_attachments.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_attachments.py @@ -1449,6 +1449,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NetworkAttachmentsScopedList) assert pager.get("h") is None @@ -2982,6 +2985,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NetworkAttachment) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_edge_security_services.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_edge_security_services.py index 4596d38dcfcc..ab8f5f271f50 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_edge_security_services.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_edge_security_services.py @@ -1503,6 +1503,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NetworkEdgeSecurityServicesScopedList) assert pager.get("h") is None diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_endpoint_groups.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_endpoint_groups.py index 94f1b8cfcc42..ffd2769ab13d 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_endpoint_groups.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_endpoint_groups.py @@ -1461,6 +1461,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NetworkEndpointGroupsScopedList) assert pager.get("h") is None @@ -3679,6 +3682,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NetworkEndpointGroup) for i in results) @@ -3990,6 +3996,9 @@ def test_list_network_endpoints_rest_pager(transport: str = "rest"): pager = client.list_network_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_firewall_policies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_firewall_policies.py index 60f17133d250..d1ad5b1c1fd8 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_firewall_policies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_firewall_policies.py @@ -2779,6 +2779,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.FirewallPoliciesScopedList) assert pager.get("h") is None @@ -5248,6 +5251,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.FirewallPolicy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_profiles.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_profiles.py index 19c4a4d8f2f4..66058b0c761f 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_profiles.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_network_profiles.py @@ -1613,6 +1613,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NetworkProfile) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_networks.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_networks.py index 460953b57cc6..9163787a987a 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_networks.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_networks.py @@ -3374,6 +3374,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Network) for i in results) @@ -3657,6 +3660,9 @@ def test_list_peering_routes_rest_pager(transport: str = "rest"): pager = client.list_peering_routes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ExchangedPeeringRoute) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_node_groups.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_node_groups.py index c39a677f4f57..9694cb8734b2 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_node_groups.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_node_groups.py @@ -1821,6 +1821,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NodeGroupsScopedList) assert pager.get("h") is None @@ -3811,6 +3814,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NodeGroup) for i in results) @@ -4097,6 +4103,9 @@ def test_list_nodes_rest_pager(transport: str = "rest"): pager = client.list_nodes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NodeGroupNode) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_node_templates.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_node_templates.py index e9d9bd6e746f..aa662fe3d639 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_node_templates.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_node_templates.py @@ -1413,6 +1413,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NodeTemplatesScopedList) assert pager.get("h") is None @@ -2926,6 +2929,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NodeTemplate) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_node_types.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_node_types.py index 9e95270b39da..57124e805d8f 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_node_types.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_node_types.py @@ -1385,6 +1385,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NodeTypesScopedList) assert pager.get("h") is None @@ -1864,6 +1867,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NodeType) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_organization_security_policies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_organization_security_policies.py index 8c1822bf2bf2..7a83ebe21671 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_organization_security_policies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_organization_security_policies.py @@ -3859,6 +3859,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SecurityPolicy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_packet_mirrorings.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_packet_mirrorings.py index d21741de55f4..082c54998673 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_packet_mirrorings.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_packet_mirrorings.py @@ -1437,6 +1437,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.PacketMirroringsScopedList) assert pager.get("h") is None @@ -2753,6 +2756,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PacketMirroring) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_preview_features.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_preview_features.py index 14bbde257666..800c830b1cd6 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_preview_features.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_preview_features.py @@ -1613,6 +1613,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PreviewFeature) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_projects.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_projects.py index dcc290ca63b5..13e837aaa9ee 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_projects.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_projects.py @@ -3272,6 +3272,9 @@ def test_get_xpn_resources_rest_pager(transport: str = "rest"): pager = client.get_xpn_resources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.XpnResourceId) for i in results) @@ -3546,6 +3549,9 @@ def test_list_xpn_hosts_rest_pager(transport: str = "rest"): pager = client.list_xpn_hosts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Project) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_public_advertised_prefixes.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_public_advertised_prefixes.py index 297b511c6c43..393c4aeaee77 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_public_advertised_prefixes.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_public_advertised_prefixes.py @@ -2857,6 +2857,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PublicAdvertisedPrefix) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_public_delegated_prefixes.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_public_delegated_prefixes.py index 9c622ec0c012..187378224987 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_public_delegated_prefixes.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_public_delegated_prefixes.py @@ -1465,6 +1465,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.PublicDelegatedPrefixesScopedList) assert pager.get("h") is None @@ -3199,6 +3202,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PublicDelegatedPrefix) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_autoscalers.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_autoscalers.py index bfc8bbb7a6fd..7b9a6b2d77f7 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_autoscalers.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_autoscalers.py @@ -2479,6 +2479,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Autoscaler) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_backend_buckets.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_backend_buckets.py index 75ee6ca17d7f..727957d31ca8 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_backend_buckets.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_backend_buckets.py @@ -2700,6 +2700,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendBucket) for i in results) @@ -2971,6 +2974,9 @@ def test_list_usable_rest_pager(transport: str = "rest"): pager = client.list_usable(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendBucket) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_backend_services.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_backend_services.py index 0b632d8e895b..4943eb9a971f 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_backend_services.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_backend_services.py @@ -2913,6 +2913,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendService) for i in results) @@ -3184,6 +3187,9 @@ def test_list_usable_rest_pager(transport: str = "rest"): pager = client.list_usable(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BackendService) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_commitments.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_commitments.py index 70b298963d6e..914ce5e437a8 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_commitments.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_commitments.py @@ -1443,6 +1443,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.CommitmentsScopedList) assert pager.get("h") is None @@ -2329,6 +2332,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Commitment) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_composite_health_checks.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_composite_health_checks.py index 4d78dea1257f..ba03a5a59ef5 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_composite_health_checks.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_composite_health_checks.py @@ -1500,6 +1500,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.CompositeHealthChecksScopedList) assert pager.get("h") is None @@ -3019,6 +3022,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.CompositeHealthCheck) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_disk_types.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_disk_types.py index 0beffe9a940c..aa9073e46fbe 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_disk_types.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_disk_types.py @@ -1633,6 +1633,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.DiskType) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_disks.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_disks.py index cc4c565a9e8d..3763e623957b 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_disks.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_disks.py @@ -3904,6 +3904,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Disk) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_aggregation_policies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_aggregation_policies.py index be62503c7a1e..d1d1205ba625 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_aggregation_policies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_aggregation_policies.py @@ -1530,6 +1530,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.HealthAggregationPoliciesScopedList) assert pager.get("h") is None @@ -2857,6 +2860,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.HealthAggregationPolicy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_check_services.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_check_services.py index 5943a6710b2b..c6d828b6c090 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_check_services.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_check_services.py @@ -1476,6 +1476,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.HealthCheckServicesScopedList) assert pager.get("h") is None @@ -2792,6 +2795,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.HealthCheckService) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_checks.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_checks.py index 609d716a8edc..21fbeb9997cb 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_checks.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_checks.py @@ -2475,6 +2475,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.HealthCheck) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_sources.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_sources.py index 63e76cd74312..0553de6e8e24 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_sources.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_health_sources.py @@ -1459,6 +1459,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.HealthSourcesScopedList) assert pager.get("h") is None @@ -2974,6 +2977,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.HealthSource) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_group_manager_resize_requests.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_group_manager_resize_requests.py index 69ddcb3b1704..8e839d227e0c 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_group_manager_resize_requests.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_group_manager_resize_requests.py @@ -3070,6 +3070,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_group_managers.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_group_managers.py index e40ba0bb7c04..445c48863029 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_group_managers.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_group_managers.py @@ -4752,6 +4752,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceGroupManager) for i in results) @@ -5045,6 +5048,9 @@ def test_list_errors_rest_pager(transport: str = "rest"): pager = client.list_errors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceManagedByIgmError) for i in results) @@ -5343,6 +5349,9 @@ def test_list_managed_instances_rest_pager(transport: str = "rest"): pager = client.list_managed_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ManagedInstance) for i in results) @@ -5643,6 +5652,9 @@ def test_list_per_instance_configs_rest_pager(transport: str = "rest"): pager = client.list_per_instance_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.PerInstanceConfig) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_groups.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_groups.py index 03a6fe171d7b..008ae71db96a 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_groups.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_groups.py @@ -1665,6 +1665,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceGroup) for i in results) @@ -1966,6 +1969,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceWithNamedPorts) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_templates.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_templates.py index dfc00ca57de9..7d6ba027f45b 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_templates.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instance_templates.py @@ -2503,6 +2503,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstanceTemplate) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instant_snapshot_groups.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instant_snapshot_groups.py index 712cbce3b774..1b08de0a9dea 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instant_snapshot_groups.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instant_snapshot_groups.py @@ -2763,6 +2763,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstantSnapshotGroup) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instant_snapshots.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instant_snapshots.py index 84b07738f78f..71a500d0324d 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instant_snapshots.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_instant_snapshots.py @@ -2706,6 +2706,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.InstantSnapshot) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_network_endpoint_groups.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_network_endpoint_groups.py index 3c42fe43e578..f8f8941144ec 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_network_endpoint_groups.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_network_endpoint_groups.py @@ -3442,6 +3442,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NetworkEndpointGroup) for i in results) @@ -3740,6 +3743,9 @@ def test_list_network_endpoints_rest_pager(transport: str = "rest"): pager = client.list_network_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_network_firewall_policies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_network_firewall_policies.py index 04beb47edf64..112631102b51 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_network_firewall_policies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_network_firewall_policies.py @@ -4758,6 +4758,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.FirewallPolicy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_notification_endpoints.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_notification_endpoints.py index 9840f4ded022..60cff8aa8bbc 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_notification_endpoints.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_notification_endpoints.py @@ -1500,6 +1500,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.NotificationEndpointsScopedList) assert pager.get("h") is None @@ -2816,6 +2819,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.NotificationEndpoint) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_operations.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_operations.py index 06c43e5b25af..a955e663791e 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_operations.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_operations.py @@ -1840,6 +1840,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Operation) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_security_policies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_security_policies.py index 043f6ed7a477..443c57cbb65b 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_security_policies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_security_policies.py @@ -3176,6 +3176,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SecurityPolicy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_snapshots.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_snapshots.py index b60558c60d73..993fe72f2d6e 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_snapshots.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_snapshots.py @@ -2658,6 +2658,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Snapshot) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_ssl_certificates.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_ssl_certificates.py index c1007cc35f57..7bfb7871aaf2 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_ssl_certificates.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_ssl_certificates.py @@ -2497,6 +2497,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SslCertificate) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_ssl_policies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_ssl_policies.py index 2d86879f5160..86bbceae14d7 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_ssl_policies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_ssl_policies.py @@ -2475,6 +2475,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SslPolicy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_target_http_proxies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_target_http_proxies.py index dac69375ca33..7056362fbda8 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_target_http_proxies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_target_http_proxies.py @@ -2501,6 +2501,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetHttpProxy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_target_https_proxies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_target_https_proxies.py index 446e40b8001e..0d3d4651ff37 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_target_https_proxies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_target_https_proxies.py @@ -2507,6 +2507,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetHttpsProxy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_target_tcp_proxies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_target_tcp_proxies.py index 813ce0718222..2a122535a134 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_target_tcp_proxies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_target_tcp_proxies.py @@ -2501,6 +2501,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetTcpProxy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_url_maps.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_url_maps.py index ad20e8f2d698..af9c8ca0a085 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_url_maps.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_url_maps.py @@ -2443,6 +2443,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.UrlMap) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_zones.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_zones.py index ecc04703cf04..3f1fe8c5d042 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_zones.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_region_zones.py @@ -1396,6 +1396,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Zone) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_regions.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_regions.py index d772ee5c8ce1..8b4919976698 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_regions.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_regions.py @@ -1547,6 +1547,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Region) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservation_blocks.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservation_blocks.py index 7be5161ab263..dc6d3aeb6b25 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservation_blocks.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservation_blocks.py @@ -1889,6 +1889,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ReservationBlock) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservation_slots.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservation_slots.py index 13c86774cc39..17b85fc2c065 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservation_slots.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservation_slots.py @@ -2116,6 +2116,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ReservationSlot) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservation_sub_blocks.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservation_sub_blocks.py index d18a0a4ec5f3..7f0d7244c0ec 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservation_sub_blocks.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservation_sub_blocks.py @@ -2355,6 +2355,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ReservationSubBlock) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservations.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservations.py index cd9b69736957..cda154641e92 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservations.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_reservations.py @@ -1398,6 +1398,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.ReservationsScopedList) assert pager.get("h") is None @@ -2919,6 +2922,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Reservation) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_resource_policies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_resource_policies.py index 361d4e9c2bef..611256c0e8ed 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_resource_policies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_resource_policies.py @@ -1437,6 +1437,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.ResourcePoliciesScopedList) assert pager.get("h") is None @@ -2950,6 +2953,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ResourcePolicy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_rollout_plans.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_rollout_plans.py index 5c0662083cfc..b9b95eb819f3 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_rollout_plans.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_rollout_plans.py @@ -2372,6 +2372,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.RolloutPlan) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_rollouts.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_rollouts.py index 56e7675248b7..4ee3dfeae184 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_rollouts.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_rollouts.py @@ -2363,6 +2363,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Rollout) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_routers.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_routers.py index 0ca86df3170f..5ff3f0608385 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_routers.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_routers.py @@ -1367,6 +1367,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.RoutersScopedList) assert pager.get("h") is None @@ -2934,6 +2937,9 @@ def test_get_nat_mapping_info_rest_pager(transport: str = "rest"): pager = client.get_nat_mapping_info(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.VmEndpointNatMappings) for i in results) @@ -4023,6 +4029,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Router) for i in results) @@ -4319,6 +4328,9 @@ def test_list_bgp_routes_rest_pager(transport: str = "rest"): pager = client.list_bgp_routes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.BgpRoute) for i in results) @@ -4609,6 +4621,9 @@ def test_list_route_policies_rest_pager(transport: str = "rest"): pager = client.list_route_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.RoutePolicy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_routes.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_routes.py index b83831282cc8..fd37f0b126dd 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_routes.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_routes.py @@ -2333,6 +2333,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Route) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_security_policies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_security_policies.py index 8737cb2db6d8..af7f9b060cdb 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_security_policies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_security_policies.py @@ -1849,6 +1849,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.SecurityPoliciesScopedList) assert pager.get("h") is None @@ -3329,6 +3332,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SecurityPolicy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_service_attachments.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_service_attachments.py index 0f69685e7650..6adc0665da45 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_service_attachments.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_service_attachments.py @@ -1449,6 +1449,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.ServiceAttachmentsScopedList) assert pager.get("h") is None @@ -2984,6 +2987,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.ServiceAttachment) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_snapshots.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_snapshots.py index 0e06a6d8a8d4..192d6bc4d622 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_snapshots.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_snapshots.py @@ -2541,6 +2541,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Snapshot) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_ssl_certificates.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_ssl_certificates.py index ed997bece3f2..2cc831174c4e 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_ssl_certificates.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_ssl_certificates.py @@ -1431,6 +1431,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.SslCertificatesScopedList) assert pager.get("h") is None @@ -2681,6 +2684,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SslCertificate) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_ssl_policies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_ssl_policies.py index a419db6eb501..e166a5f0e82b 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_ssl_policies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_ssl_policies.py @@ -1393,6 +1393,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.SslPoliciesScopedList) assert pager.get("h") is None @@ -2639,6 +2642,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.SslPolicy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_storage_pool_types.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_storage_pool_types.py index cbfc7e47c97f..efe3eaa4f8c3 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_storage_pool_types.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_storage_pool_types.py @@ -1435,6 +1435,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.StoragePoolTypesScopedList) assert pager.get("h") is None @@ -1917,6 +1920,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.StoragePoolType) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_storage_pools.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_storage_pools.py index 6f0f47581bbc..5e7c83b14c9f 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_storage_pools.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_storage_pools.py @@ -1398,6 +1398,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.StoragePoolsScopedList) assert pager.get("h") is None @@ -2911,6 +2914,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.StoragePool) for i in results) @@ -3197,6 +3203,9 @@ def test_list_disks_rest_pager(transport: str = "rest"): pager = client.list_disks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.StoragePoolDisk) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_subnetworks.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_subnetworks.py index 25ac421bf6e2..6c0d6698b4e8 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_subnetworks.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_subnetworks.py @@ -1395,6 +1395,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.SubnetworksScopedList) assert pager.get("h") is None @@ -3354,6 +3357,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Subnetwork) for i in results) @@ -3618,6 +3624,9 @@ def test_list_usable_rest_pager(transport: str = "rest"): pager = client.list_usable(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.UsableSubnetwork) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_grpc_proxies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_grpc_proxies.py index 0268212ffa36..13382130894c 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_grpc_proxies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_grpc_proxies.py @@ -2417,6 +2417,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetGrpcProxy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_http_proxies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_http_proxies.py index 9f4923818c9b..1412aee1a8e4 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_http_proxies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_http_proxies.py @@ -1445,6 +1445,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.TargetHttpProxiesScopedList) assert pager.get("h") is None @@ -2695,6 +2698,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetHttpProxy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_https_proxies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_https_proxies.py index 9ecebe7c082d..655706aebf70 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_https_proxies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_https_proxies.py @@ -1449,6 +1449,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.TargetHttpsProxiesScopedList) assert pager.get("h") is None @@ -2703,6 +2706,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetHttpsProxy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_instances.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_instances.py index 1696c75c29c0..9b558a811acd 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_instances.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_instances.py @@ -1431,6 +1431,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.TargetInstancesScopedList) assert pager.get("h") is None @@ -2739,6 +2742,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetInstance) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_pools.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_pools.py index 7dada4bc0652..c53f00cc73a7 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_pools.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_pools.py @@ -2273,6 +2273,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.TargetPoolsScopedList) assert pager.get("h") is None @@ -3784,6 +3787,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetPool) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_ssl_proxies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_ssl_proxies.py index 40af50218748..22affa2b2a63 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_ssl_proxies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_ssl_proxies.py @@ -2409,6 +2409,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetSslProxy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_tcp_proxies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_tcp_proxies.py index f03a99c47593..bb0aa3099880 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_tcp_proxies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_tcp_proxies.py @@ -1437,6 +1437,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.TargetTcpProxiesScopedList) assert pager.get("h") is None @@ -2687,6 +2690,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetTcpProxy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_vpn_gateways.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_vpn_gateways.py index 390114420627..587226f0e55f 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_vpn_gateways.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_target_vpn_gateways.py @@ -1445,6 +1445,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.TargetVpnGatewaysScopedList) assert pager.get("h") is None @@ -2757,6 +2760,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.TargetVpnGateway) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_url_maps.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_url_maps.py index 6530f38821b3..1307b1884d67 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_url_maps.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_url_maps.py @@ -1369,6 +1369,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.UrlMapsScopedList) assert pager.get("h") is None @@ -3025,6 +3028,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.UrlMap) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_vpn_gateways.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_vpn_gateways.py index 362f844e8023..db97d3c60fa9 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_vpn_gateways.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_vpn_gateways.py @@ -1393,6 +1393,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.VpnGatewaysScopedList) assert pager.get("h") is None @@ -2904,6 +2907,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.VpnGateway) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_vpn_tunnels.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_vpn_tunnels.py index d1d8e9b66c5a..5320cd716b46 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_vpn_tunnels.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_vpn_tunnels.py @@ -1389,6 +1389,9 @@ def test_aggregated_list_rest_pager(transport: str = "rest"): pager = client.aggregated_list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + assert isinstance(pager.get("a"), compute.VpnTunnelsScopedList) assert pager.get("h") is None @@ -2698,6 +2701,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.VpnTunnel) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_wire_groups.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_wire_groups.py index de14f4d541fc..09c52139bf41 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_wire_groups.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_wire_groups.py @@ -2429,6 +2429,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.WireGroup) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_zone_operations.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_zone_operations.py index 113c314ef25f..c6453007a626 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_zone_operations.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_zone_operations.py @@ -1820,6 +1820,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Operation) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_zone_vm_extension_policies.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_zone_vm_extension_policies.py index 654b2f1737f6..fe2f1e9b14f4 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_zone_vm_extension_policies.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_zone_vm_extension_policies.py @@ -2501,6 +2501,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.VmExtensionPolicy) for i in results) diff --git a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_zones.py b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_zones.py index 722d0d783337..491cd8ccc2b6 100644 --- a/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_zones.py +++ b/packages/google-cloud-compute/tests/unit/gapic/compute_v1/test_zones.py @@ -1541,6 +1541,9 @@ def test_list_rest_pager(transport: str = "rest"): pager = client.list(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, compute.Zone) for i in results) diff --git a/packages/google-cloud-confidentialcomputing/noxfile.py b/packages/google-cloud-confidentialcomputing/noxfile.py index 2a3d9e9aa558..b7e17d0de9e5 100644 --- a/packages/google-cloud-confidentialcomputing/noxfile.py +++ b/packages/google-cloud-confidentialcomputing/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-confidentialcomputing/testing/constraints-3.15.txt b/packages/google-cloud-confidentialcomputing/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-confidentialcomputing/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-config/noxfile.py b/packages/google-cloud-config/noxfile.py index 9e253aa7bb01..17cdc2675e83 100644 --- a/packages/google-cloud-config/noxfile.py +++ b/packages/google-cloud-config/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-config/testing/constraints-3.15.txt b/packages/google-cloud-config/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-config/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-config/tests/unit/gapic/config_v1/test_config.py b/packages/google-cloud-config/tests/unit/gapic/config_v1/test_config.py index dd7a2fb2f702..fd08887c3571 100644 --- a/packages/google-cloud-config/tests/unit/gapic/config_v1/test_config.py +++ b/packages/google-cloud-config/tests/unit/gapic/config_v1/test_config.py @@ -1653,6 +1653,9 @@ def test_list_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.Deployment) for i in results) @@ -1741,6 +1744,8 @@ async def test_list_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3665,6 +3670,9 @@ def test_list_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.Revision) for i in results) @@ -3753,6 +3761,8 @@ async def test_list_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4897,6 +4907,9 @@ def test_list_resources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.Resource) for i in results) @@ -4985,6 +4998,8 @@ async def test_list_resources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8329,6 +8344,9 @@ def test_list_previews_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.Preview) for i in results) @@ -8417,6 +8435,8 @@ async def test_list_previews_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9457,6 +9477,9 @@ def test_list_terraform_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.TerraformVersion) for i in results) @@ -9549,6 +9572,8 @@ async def test_list_terraform_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10359,6 +10384,9 @@ def test_list_resource_changes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.ResourceChange) for i in results) @@ -10451,6 +10479,8 @@ async def test_list_resource_changes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11257,6 +11287,9 @@ def test_list_resource_drifts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.ResourceDrift) for i in results) @@ -11349,6 +11382,8 @@ async def test_list_resource_drifts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14303,6 +14338,9 @@ def test_list_deployment_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.DeploymentGroup) for i in results) @@ -14395,6 +14433,8 @@ async def test_list_deployment_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15901,6 +15941,9 @@ def test_list_deployment_group_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.DeploymentGroupRevision) for i in results) @@ -15993,6 +16036,8 @@ async def test_list_deployment_group_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16301,6 +16346,9 @@ def test_list_deployments_rest_pager(transport: str = "rest"): pager = client.list_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.Deployment) for i in results) @@ -17367,6 +17415,9 @@ def test_list_revisions_rest_pager(transport: str = "rest"): pager = client.list_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.Revision) for i in results) @@ -17983,6 +18034,9 @@ def test_list_resources_rest_pager(transport: str = "rest"): pager = client.list_resources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.Resource) for i in results) @@ -19815,6 +19869,9 @@ def test_list_previews_rest_pager(transport: str = "rest"): pager = client.list_previews(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.Preview) for i in results) @@ -20382,6 +20439,9 @@ def test_list_terraform_versions_rest_pager(transport: str = "rest"): pager = client.list_terraform_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.TerraformVersion) for i in results) @@ -20836,6 +20896,9 @@ def test_list_resource_changes_rest_pager(transport: str = "rest"): pager = client.list_resource_changes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.ResourceChange) for i in results) @@ -21286,6 +21349,9 @@ def test_list_resource_drifts_rest_pager(transport: str = "rest"): pager = client.list_resource_drifts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.ResourceDrift) for i in results) @@ -22911,6 +22977,9 @@ def test_list_deployment_groups_rest_pager(transport: str = "rest"): pager = client.list_deployment_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.DeploymentGroup) for i in results) @@ -23735,6 +23804,9 @@ def test_list_deployment_group_revisions_rest_pager(transport: str = "rest"): pager = client.list_deployment_group_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config.DeploymentGroupRevision) for i in results) diff --git a/packages/google-cloud-configdelivery/noxfile.py b/packages/google-cloud-configdelivery/noxfile.py index b030cca9d976..055728dfe027 100644 --- a/packages/google-cloud-configdelivery/noxfile.py +++ b/packages/google-cloud-configdelivery/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-configdelivery/testing/constraints-3.15.txt b/packages/google-cloud-configdelivery/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-configdelivery/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-configdelivery/tests/unit/gapic/configdelivery_v1/test_config_delivery.py b/packages/google-cloud-configdelivery/tests/unit/gapic/configdelivery_v1/test_config_delivery.py index 17eaeaf67cc6..5a6cefaa5bca 100644 --- a/packages/google-cloud-configdelivery/tests/unit/gapic/configdelivery_v1/test_config_delivery.py +++ b/packages/google-cloud-configdelivery/tests/unit/gapic/configdelivery_v1/test_config_delivery.py @@ -1738,6 +1738,9 @@ def test_list_resource_bundles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.ResourceBundle) for i in results) @@ -1830,6 +1833,8 @@ async def test_list_resource_bundles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3709,6 +3714,9 @@ def test_list_fleet_packages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.FleetPackage) for i in results) @@ -3801,6 +3809,8 @@ async def test_list_fleet_packages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5665,6 +5675,9 @@ def test_list_releases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Release) for i in results) @@ -5753,6 +5766,8 @@ async def test_list_releases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7533,6 +7548,9 @@ def test_list_variants_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Variant) for i in results) @@ -7621,6 +7639,8 @@ async def test_list_variants_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9397,6 +9417,9 @@ def test_list_rollouts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Rollout) for i in results) @@ -9485,6 +9508,8 @@ async def test_list_rollouts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11122,6 +11147,9 @@ def test_list_resource_bundles_rest_pager(transport: str = "rest"): pager = client.list_resource_bundles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.ResourceBundle) for i in results) @@ -12194,6 +12222,9 @@ def test_list_fleet_packages_rest_pager(transport: str = "rest"): pager = client.list_fleet_packages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.FleetPackage) for i in results) @@ -13263,6 +13294,9 @@ def test_list_releases_rest_pager(transport: str = "rest"): pager = client.list_releases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Release) for i in results) @@ -14318,6 +14352,9 @@ def test_list_variants_rest_pager(transport: str = "rest"): pager = client.list_variants(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Variant) for i in results) @@ -15355,6 +15392,9 @@ def test_list_rollouts_rest_pager(transport: str = "rest"): pager = client.list_rollouts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Rollout) for i in results) diff --git a/packages/google-cloud-configdelivery/tests/unit/gapic/configdelivery_v1alpha/test_config_delivery.py b/packages/google-cloud-configdelivery/tests/unit/gapic/configdelivery_v1alpha/test_config_delivery.py index 8f0d9b53bceb..dc38155ec775 100644 --- a/packages/google-cloud-configdelivery/tests/unit/gapic/configdelivery_v1alpha/test_config_delivery.py +++ b/packages/google-cloud-configdelivery/tests/unit/gapic/configdelivery_v1alpha/test_config_delivery.py @@ -1738,6 +1738,9 @@ def test_list_resource_bundles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.ResourceBundle) for i in results) @@ -1830,6 +1833,8 @@ async def test_list_resource_bundles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3709,6 +3714,9 @@ def test_list_fleet_packages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.FleetPackage) for i in results) @@ -3801,6 +3809,8 @@ async def test_list_fleet_packages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5665,6 +5675,9 @@ def test_list_releases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Release) for i in results) @@ -5753,6 +5766,8 @@ async def test_list_releases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7533,6 +7548,9 @@ def test_list_variants_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Variant) for i in results) @@ -7621,6 +7639,8 @@ async def test_list_variants_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9397,6 +9417,9 @@ def test_list_rollouts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Rollout) for i in results) @@ -9485,6 +9508,8 @@ async def test_list_rollouts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11122,6 +11147,9 @@ def test_list_resource_bundles_rest_pager(transport: str = "rest"): pager = client.list_resource_bundles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.ResourceBundle) for i in results) @@ -12194,6 +12222,9 @@ def test_list_fleet_packages_rest_pager(transport: str = "rest"): pager = client.list_fleet_packages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.FleetPackage) for i in results) @@ -13263,6 +13294,9 @@ def test_list_releases_rest_pager(transport: str = "rest"): pager = client.list_releases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Release) for i in results) @@ -14318,6 +14352,9 @@ def test_list_variants_rest_pager(transport: str = "rest"): pager = client.list_variants(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Variant) for i in results) @@ -15355,6 +15392,9 @@ def test_list_rollouts_rest_pager(transport: str = "rest"): pager = client.list_rollouts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Rollout) for i in results) diff --git a/packages/google-cloud-configdelivery/tests/unit/gapic/configdelivery_v1beta/test_config_delivery.py b/packages/google-cloud-configdelivery/tests/unit/gapic/configdelivery_v1beta/test_config_delivery.py index be4d893e87f0..626c85be67e0 100644 --- a/packages/google-cloud-configdelivery/tests/unit/gapic/configdelivery_v1beta/test_config_delivery.py +++ b/packages/google-cloud-configdelivery/tests/unit/gapic/configdelivery_v1beta/test_config_delivery.py @@ -1738,6 +1738,9 @@ def test_list_resource_bundles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.ResourceBundle) for i in results) @@ -1830,6 +1833,8 @@ async def test_list_resource_bundles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3709,6 +3714,9 @@ def test_list_fleet_packages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.FleetPackage) for i in results) @@ -3801,6 +3809,8 @@ async def test_list_fleet_packages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5665,6 +5675,9 @@ def test_list_releases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Release) for i in results) @@ -5753,6 +5766,8 @@ async def test_list_releases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7533,6 +7548,9 @@ def test_list_variants_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Variant) for i in results) @@ -7621,6 +7639,8 @@ async def test_list_variants_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9397,6 +9417,9 @@ def test_list_rollouts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Rollout) for i in results) @@ -9485,6 +9508,8 @@ async def test_list_rollouts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11122,6 +11147,9 @@ def test_list_resource_bundles_rest_pager(transport: str = "rest"): pager = client.list_resource_bundles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.ResourceBundle) for i in results) @@ -12194,6 +12222,9 @@ def test_list_fleet_packages_rest_pager(transport: str = "rest"): pager = client.list_fleet_packages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.FleetPackage) for i in results) @@ -13263,6 +13294,9 @@ def test_list_releases_rest_pager(transport: str = "rest"): pager = client.list_releases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Release) for i in results) @@ -14318,6 +14352,9 @@ def test_list_variants_rest_pager(transport: str = "rest"): pager = client.list_variants(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Variant) for i in results) @@ -15355,6 +15392,9 @@ def test_list_rollouts_rest_pager(transport: str = "rest"): pager = client.list_rollouts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, config_delivery.Rollout) for i in results) diff --git a/packages/google-cloud-contact-center-insights/noxfile.py b/packages/google-cloud-contact-center-insights/noxfile.py index fa7a8ecf4016..0176cc69f45a 100644 --- a/packages/google-cloud-contact-center-insights/noxfile.py +++ b/packages/google-cloud-contact-center-insights/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-contact-center-insights/testing/constraints-3.15.txt b/packages/google-cloud-contact-center-insights/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-contact-center-insights/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-contact-center-insights/tests/unit/gapic/contact_center_insights_v1/test_contact_center_insights.py b/packages/google-cloud-contact-center-insights/tests/unit/gapic/contact_center_insights_v1/test_contact_center_insights.py index 9503ead9389e..5c50f6468024 100644 --- a/packages/google-cloud-contact-center-insights/tests/unit/gapic/contact_center_insights_v1/test_contact_center_insights.py +++ b/packages/google-cloud-contact-center-insights/tests/unit/gapic/contact_center_insights_v1/test_contact_center_insights.py @@ -3197,6 +3197,9 @@ def test_list_conversations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Conversation) for i in results) @@ -3289,6 +3292,8 @@ async def test_list_conversations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4709,6 +4714,9 @@ def test_list_analyses_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Analysis) for i in results) @@ -4797,6 +4805,8 @@ async def test_list_analyses_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12513,6 +12523,9 @@ def test_list_phrase_matchers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.PhraseMatcher) for i in results) @@ -12605,6 +12618,8 @@ async def test_list_phrase_matchers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15473,6 +15488,9 @@ def test_list_analysis_rules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.AnalysisRule) for i in results) @@ -15565,6 +15583,8 @@ async def test_list_analysis_rules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18046,6 +18066,9 @@ def test_list_views_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.View) for i in results) @@ -18134,6 +18157,8 @@ async def test_list_views_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20900,6 +20925,9 @@ def test_list_qa_questions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QaQuestion) for i in results) @@ -20992,6 +21020,8 @@ async def test_list_qa_questions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -22834,6 +22864,9 @@ def test_list_qa_scorecards_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QaScorecard) for i in results) @@ -22926,6 +22959,8 @@ async def test_list_qa_scorecards_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -25349,6 +25384,9 @@ def test_list_qa_scorecard_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QaScorecardRevision) for i in results) @@ -25441,6 +25479,8 @@ async def test_list_qa_scorecard_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -26267,6 +26307,9 @@ def test_list_feedback_labels_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.FeedbackLabel) for i in results) @@ -26359,6 +26402,8 @@ async def test_list_feedback_labels_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -27852,6 +27897,9 @@ def test_list_all_feedback_labels_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.FeedbackLabel) for i in results) @@ -27944,6 +27992,8 @@ async def test_list_all_feedback_labels_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -29672,6 +29722,9 @@ def test_list_conversations_rest_pager(transport: str = "rest"): pager = client.list_conversations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Conversation) for i in results) @@ -30485,6 +30538,9 @@ def test_list_analyses_rest_pager(transport: str = "rest"): pager = client.list_analyses(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Analysis) for i in results) @@ -34621,6 +34677,9 @@ def test_list_phrase_matchers_rest_pager(transport: str = "rest"): pager = client.list_phrase_matchers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.PhraseMatcher) for i in results) @@ -36175,6 +36234,9 @@ def test_list_analysis_rules_rest_pager(transport: str = "rest"): pager = client.list_analysis_rules(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.AnalysisRule) for i in results) @@ -37524,6 +37586,9 @@ def test_list_views_rest_pager(transport: str = "rest"): pager = client.list_views(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.View) for i in results) @@ -39025,6 +39090,9 @@ def test_list_qa_questions_rest_pager(transport: str = "rest"): pager = client.list_qa_questions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QaQuestion) for i in results) @@ -40042,6 +40110,9 @@ def test_list_qa_scorecards_rest_pager(transport: str = "rest"): pager = client.list_qa_scorecards(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QaScorecard) for i in results) @@ -41336,6 +41407,9 @@ def test_list_qa_scorecard_revisions_rest_pager(transport: str = "rest"): pager = client.list_qa_scorecard_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QaScorecardRevision) for i in results) @@ -41807,6 +41881,9 @@ def test_list_feedback_labels_rest_pager(transport: str = "rest"): pager = client.list_feedback_labels(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.FeedbackLabel) for i in results) @@ -42634,6 +42711,9 @@ def test_list_all_feedback_labels_rest_pager(transport: str = "rest"): pager = client.list_all_feedback_labels(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.FeedbackLabel) for i in results) diff --git a/packages/google-cloud-container/noxfile.py b/packages/google-cloud-container/noxfile.py index c681b455965e..d2d1050a3b60 100644 --- a/packages/google-cloud-container/noxfile.py +++ b/packages/google-cloud-container/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-container/testing/constraints-3.15.txt b/packages/google-cloud-container/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-container/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-container/tests/unit/gapic/container_v1/test_cluster_manager.py b/packages/google-cloud-container/tests/unit/gapic/container_v1/test_cluster_manager.py index 1e915cb4b626..fa94059d4b41 100644 --- a/packages/google-cloud-container/tests/unit/gapic/container_v1/test_cluster_manager.py +++ b/packages/google-cloud-container/tests/unit/gapic/container_v1/test_cluster_manager.py @@ -13776,6 +13776,9 @@ def test_list_usable_subnetworks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cluster_service.UsableSubnetwork) for i in results) @@ -13868,6 +13871,8 @@ async def test_list_usable_subnetworks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -19314,6 +19319,9 @@ def test_list_usable_subnetworks_rest_pager(transport: str = "rest"): pager = client.list_usable_subnetworks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cluster_service.UsableSubnetwork) for i in results) diff --git a/packages/google-cloud-container/tests/unit/gapic/container_v1beta1/test_cluster_manager.py b/packages/google-cloud-container/tests/unit/gapic/container_v1beta1/test_cluster_manager.py index e6e3b4f80933..9c16cc74e79c 100644 --- a/packages/google-cloud-container/tests/unit/gapic/container_v1beta1/test_cluster_manager.py +++ b/packages/google-cloud-container/tests/unit/gapic/container_v1beta1/test_cluster_manager.py @@ -13862,6 +13862,9 @@ def test_list_usable_subnetworks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cluster_service.UsableSubnetwork) for i in results) @@ -13954,6 +13957,8 @@ async def test_list_usable_subnetworks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-containeranalysis/noxfile.py b/packages/google-cloud-containeranalysis/noxfile.py index a919287d3dc0..f6ea5bebaa2f 100644 --- a/packages/google-cloud-containeranalysis/noxfile.py +++ b/packages/google-cloud-containeranalysis/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-containeranalysis/testing/constraints-3.15.txt b/packages/google-cloud-containeranalysis/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-containeranalysis/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-contentwarehouse/noxfile.py b/packages/google-cloud-contentwarehouse/noxfile.py index b276ac47b184..19e3afdfa160 100644 --- a/packages/google-cloud-contentwarehouse/noxfile.py +++ b/packages/google-cloud-contentwarehouse/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-contentwarehouse/testing/constraints-3.15.txt b/packages/google-cloud-contentwarehouse/testing/constraints-3.15.txt new file mode 100644 index 000000000000..daf20eb644e0 --- /dev/null +++ b/packages/google-cloud-contentwarehouse/testing/constraints-3.15.txt @@ -0,0 +1,14 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-cloud-documentai>=3 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_document_link_service.py b/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_document_link_service.py index 8bd8dea265c9..d0bbfb68a5da 100644 --- a/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_document_link_service.py +++ b/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_document_link_service.py @@ -2127,6 +2127,9 @@ def test_list_linked_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document_link_service.DocumentLink) for i in results) @@ -2219,6 +2222,8 @@ async def test_list_linked_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3398,6 +3403,9 @@ def test_list_linked_sources_rest_pager(transport: str = "rest"): pager = client.list_linked_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document_link_service.DocumentLink) for i in results) diff --git a/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_document_schema_service.py b/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_document_schema_service.py index 33e68621ad3c..e5011be8efca 100644 --- a/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_document_schema_service.py +++ b/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_document_schema_service.py @@ -3212,6 +3212,9 @@ def test_list_document_schemas_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document_schema.DocumentSchema) for i in results) @@ -3304,6 +3307,8 @@ async def test_list_document_schemas_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4370,6 +4375,9 @@ def test_list_document_schemas_rest_pager(transport: str = "rest"): pager = client.list_document_schemas(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document_schema.DocumentSchema) for i in results) diff --git a/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_document_service.py b/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_document_service.py index b75f7e470e71..544c502b43ef 100644 --- a/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_document_service.py +++ b/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_document_service.py @@ -3120,6 +3120,9 @@ def test_search_documents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3211,6 +3214,8 @@ async def test_search_documents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5273,6 +5278,9 @@ def test_search_documents_rest_pager(transport: str = "rest"): pager = client.search_documents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_rule_set_service.py b/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_rule_set_service.py index 5c1a77697941..fcbd8a286172 100644 --- a/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_rule_set_service.py +++ b/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_rule_set_service.py @@ -3021,6 +3021,9 @@ def test_list_rule_sets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rule_engine.RuleSet) for i in results) @@ -3109,6 +3112,8 @@ async def test_list_rule_sets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4133,6 +4138,9 @@ def test_list_rule_sets_rest_pager(transport: str = "rest"): pager = client.list_rule_sets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rule_engine.RuleSet) for i in results) diff --git a/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_synonym_set_service.py b/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_synonym_set_service.py index 7153ded3ae85..f04bdfb8f56e 100644 --- a/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_synonym_set_service.py +++ b/packages/google-cloud-contentwarehouse/tests/unit/gapic/contentwarehouse_v1/test_synonym_set_service.py @@ -3128,6 +3128,9 @@ def test_list_synonym_sets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, synonymset.SynonymSet) for i in results) @@ -3220,6 +3223,8 @@ async def test_list_synonym_sets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4276,6 +4281,9 @@ def test_list_synonym_sets_rest_pager(transport: str = "rest"): pager = client.list_synonym_sets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, synonymset.SynonymSet) for i in results) diff --git a/packages/google-cloud-data-fusion/noxfile.py b/packages/google-cloud-data-fusion/noxfile.py index bd3ea36f0386..f994dfb3fb9e 100644 --- a/packages/google-cloud-data-fusion/noxfile.py +++ b/packages/google-cloud-data-fusion/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-data-fusion/testing/constraints-3.15.txt b/packages/google-cloud-data-fusion/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-data-fusion/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-data-fusion/tests/unit/gapic/data_fusion_v1/test_data_fusion.py b/packages/google-cloud-data-fusion/tests/unit/gapic/data_fusion_v1/test_data_fusion.py index 4f0dd1e091d0..48795dccd6db 100644 --- a/packages/google-cloud-data-fusion/tests/unit/gapic/data_fusion_v1/test_data_fusion.py +++ b/packages/google-cloud-data-fusion/tests/unit/gapic/data_fusion_v1/test_data_fusion.py @@ -1687,6 +1687,9 @@ def test_list_available_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datafusion.Version) for i in results) @@ -1779,6 +1782,8 @@ async def test_list_available_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2135,6 +2140,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datafusion.Instance) for i in results) @@ -2223,6 +2231,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4109,6 +4119,9 @@ def test_list_available_versions_rest_pager(transport: str = "rest"): pager = client.list_available_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datafusion.Version) for i in results) @@ -4309,6 +4322,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datafusion.Instance) for i in results) diff --git a/packages/google-cloud-data-qna/noxfile.py b/packages/google-cloud-data-qna/noxfile.py index 043ebd79a0bb..be135630af1a 100644 --- a/packages/google-cloud-data-qna/noxfile.py +++ b/packages/google-cloud-data-qna/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-data-qna/testing/constraints-3.15.txt b/packages/google-cloud-data-qna/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-data-qna/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-databasecenter/noxfile.py b/packages/google-cloud-databasecenter/noxfile.py index 003b7dd3c53f..98b0f92df5b7 100644 --- a/packages/google-cloud-databasecenter/noxfile.py +++ b/packages/google-cloud-databasecenter/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-databasecenter/testing/constraints-3.15.txt b/packages/google-cloud-databasecenter/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-databasecenter/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-databasecenter/tests/unit/gapic/databasecenter_v1beta/test_database_center.py b/packages/google-cloud-databasecenter/tests/unit/gapic/databasecenter_v1beta/test_database_center.py index 4856002d0836..008ec6f80cc2 100644 --- a/packages/google-cloud-databasecenter/tests/unit/gapic/databasecenter_v1beta/test_database_center.py +++ b/packages/google-cloud-databasecenter/tests/unit/gapic/databasecenter_v1beta/test_database_center.py @@ -1557,6 +1557,9 @@ def test_query_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product.Product) for i in results) @@ -1645,6 +1648,8 @@ async def test_query_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -1945,6 +1950,9 @@ def test_aggregate_fleet_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.AggregateFleetRow) for i in results) @@ -2033,6 +2041,8 @@ async def test_aggregate_fleet_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2340,6 +2350,9 @@ def test_query_database_resource_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.DatabaseResourceGroup) for i in results) @@ -2432,6 +2445,8 @@ async def test_query_database_resource_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3013,6 +3028,9 @@ def test_aggregate_query_stats_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.QueryStatsInfo) for i in results) @@ -3105,6 +3123,8 @@ async def test_aggregate_query_stats_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3479,6 +3499,9 @@ def test_query_issues_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.DatabaseResourceIssue) for i in results) @@ -3567,6 +3590,8 @@ async def test_query_issues_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3816,6 +3841,9 @@ def test_query_products_rest_pager(transport: str = "rest"): pager = client.query_products(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product.Product) for i in results) @@ -4031,6 +4059,9 @@ def test_aggregate_fleet_rest_pager(transport: str = "rest"): pager = client.aggregate_fleet(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.AggregateFleetRow) for i in results) @@ -4222,6 +4253,9 @@ def test_query_database_resource_groups_rest_pager(transport: str = "rest"): pager = client.query_database_resource_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.DatabaseResourceGroup) for i in results) @@ -4539,6 +4573,9 @@ def test_aggregate_query_stats_rest_pager(transport: str = "rest"): pager = client.aggregate_query_stats(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.QueryStatsInfo) for i in results) @@ -4775,6 +4812,9 @@ def test_query_issues_rest_pager(transport: str = "rest"): pager = client.query_issues(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.DatabaseResourceIssue) for i in results) diff --git a/packages/google-cloud-datacatalog-lineage-configmanagement/noxfile.py b/packages/google-cloud-datacatalog-lineage-configmanagement/noxfile.py index 5ba2db6104ad..366d1ca3ba07 100644 --- a/packages/google-cloud-datacatalog-lineage-configmanagement/noxfile.py +++ b/packages/google-cloud-datacatalog-lineage-configmanagement/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-datacatalog-lineage-configmanagement/testing/constraints-3.15.txt b/packages/google-cloud-datacatalog-lineage-configmanagement/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-datacatalog-lineage-configmanagement/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-datacatalog-lineage/noxfile.py b/packages/google-cloud-datacatalog-lineage/noxfile.py index 1cf9b67d7e28..833301dca338 100644 --- a/packages/google-cloud-datacatalog-lineage/noxfile.py +++ b/packages/google-cloud-datacatalog-lineage/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-datacatalog-lineage/testing/constraints-3.15.txt b/packages/google-cloud-datacatalog-lineage/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-datacatalog-lineage/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-datacatalog-lineage/tests/unit/gapic/datacatalog_lineage_v1/test_lineage.py b/packages/google-cloud-datacatalog-lineage/tests/unit/gapic/datacatalog_lineage_v1/test_lineage.py index db506688ba06..209c54785c85 100644 --- a/packages/google-cloud-datacatalog-lineage/tests/unit/gapic/datacatalog_lineage_v1/test_lineage.py +++ b/packages/google-cloud-datacatalog-lineage/tests/unit/gapic/datacatalog_lineage_v1/test_lineage.py @@ -3184,6 +3184,9 @@ def test_list_processes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lineage.Process) for i in results) @@ -3272,6 +3275,8 @@ async def test_list_processes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5039,6 +5044,9 @@ def test_list_runs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lineage.Run) for i in results) @@ -5127,6 +5135,8 @@ async def test_list_runs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6614,6 +6624,9 @@ def test_list_lineage_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lineage.LineageEvent) for i in results) @@ -6706,6 +6719,8 @@ async def test_list_lineage_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7386,6 +7401,9 @@ def test_search_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lineage.Link) for i in results) @@ -7474,6 +7492,8 @@ async def test_search_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7841,6 +7861,9 @@ def test_batch_search_link_processes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lineage.ProcessLinks) for i in results) @@ -7933,6 +7956,8 @@ async def test_batch_search_link_processes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9282,6 +9307,9 @@ def test_list_processes_rest_pager(transport: str = "rest"): pager = client.list_processes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lineage.Process) for i in results) @@ -10287,6 +10315,9 @@ def test_list_runs_rest_pager(transport: str = "rest"): pager = client.list_runs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lineage.Run) for i in results) @@ -11116,6 +11147,9 @@ def test_list_lineage_events_rest_pager(transport: str = "rest"): pager = client.list_lineage_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lineage.LineageEvent) for i in results) @@ -11477,6 +11511,9 @@ def test_search_links_rest_pager(transport: str = "rest"): pager = client.search_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lineage.Link) for i in results) @@ -11678,6 +11715,9 @@ def test_batch_search_link_processes_rest_pager(transport: str = "rest"): pager = client.batch_search_link_processes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lineage.ProcessLinks) for i in results) diff --git a/packages/google-cloud-datacatalog/noxfile.py b/packages/google-cloud-datacatalog/noxfile.py index f1d0baa07491..aebdcbe85b24 100644 --- a/packages/google-cloud-datacatalog/noxfile.py +++ b/packages/google-cloud-datacatalog/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-datacatalog/testing/constraints-3.15.txt b/packages/google-cloud-datacatalog/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-datacatalog/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1/test_data_catalog.py b/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1/test_data_catalog.py index 190eff2b284b..333a45ecabae 100644 --- a/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1/test_data_catalog.py +++ b/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1/test_data_catalog.py @@ -1638,6 +1638,9 @@ def test_search_catalog_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, search.SearchCatalogResult) for i in results) @@ -1726,6 +1729,8 @@ async def test_search_catalog_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3584,6 +3589,9 @@ def test_list_entry_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datacatalog.EntryGroup) for i in results) @@ -3676,6 +3684,8 @@ async def test_list_entry_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5665,6 +5675,9 @@ def test_list_entries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datacatalog.Entry) for i in results) @@ -5753,6 +5766,8 @@ async def test_list_entries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10964,6 +10979,9 @@ def test_list_tags_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tags.Tag) for i in results) @@ -11052,6 +11070,8 @@ async def test_list_tags_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1/test_policy_tag_manager.py b/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1/test_policy_tag_manager.py index 694571c37b06..d5fd9231bfd1 100644 --- a/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1/test_policy_tag_manager.py +++ b/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1/test_policy_tag_manager.py @@ -2721,6 +2721,9 @@ def test_list_taxonomies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, policytagmanager.Taxonomy) for i in results) @@ -2809,6 +2812,8 @@ async def test_list_taxonomies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4633,6 +4638,9 @@ def test_list_policy_tags_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, policytagmanager.PolicyTag) for i in results) @@ -4721,6 +4729,8 @@ async def test_list_policy_tags_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1beta1/test_data_catalog.py b/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1beta1/test_data_catalog.py index 00a5a6d41db3..f55f2c80c4e4 100644 --- a/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1beta1/test_data_catalog.py +++ b/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1beta1/test_data_catalog.py @@ -1630,6 +1630,9 @@ def test_search_catalog_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, search.SearchCatalogResult) for i in results) @@ -1718,6 +1721,8 @@ async def test_search_catalog_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3564,6 +3569,9 @@ def test_list_entry_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datacatalog.EntryGroup) for i in results) @@ -3656,6 +3664,8 @@ async def test_list_entry_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5623,6 +5633,9 @@ def test_list_entries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datacatalog.Entry) for i in results) @@ -5711,6 +5724,8 @@ async def test_list_entries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10378,6 +10393,9 @@ def test_list_tags_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tags.Tag) for i in results) @@ -10466,6 +10484,8 @@ async def test_list_tags_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1beta1/test_policy_tag_manager.py b/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1beta1/test_policy_tag_manager.py index f010d066e8d3..d346054518cc 100644 --- a/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1beta1/test_policy_tag_manager.py +++ b/packages/google-cloud-datacatalog/tests/unit/gapic/datacatalog_v1beta1/test_policy_tag_manager.py @@ -2721,6 +2721,9 @@ def test_list_taxonomies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, policytagmanager.Taxonomy) for i in results) @@ -2809,6 +2812,8 @@ async def test_list_taxonomies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4633,6 +4638,9 @@ def test_list_policy_tags_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, policytagmanager.PolicyTag) for i in results) @@ -4721,6 +4729,8 @@ async def test_list_policy_tags_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-dataflow-client/noxfile.py b/packages/google-cloud-dataflow-client/noxfile.py index eb858582eda7..61d3e6196812 100644 --- a/packages/google-cloud-dataflow-client/noxfile.py +++ b/packages/google-cloud-dataflow-client/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-dataflow-client/testing/constraints-3.15.txt b/packages/google-cloud-dataflow-client/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-dataflow-client/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-dataflow-client/tests/unit/gapic/dataflow_v1beta3/test_jobs_v1_beta3.py b/packages/google-cloud-dataflow-client/tests/unit/gapic/dataflow_v1beta3/test_jobs_v1_beta3.py index 85e518d9e50d..48c230b92d38 100644 --- a/packages/google-cloud-dataflow-client/tests/unit/gapic/dataflow_v1beta3/test_jobs_v1_beta3.py +++ b/packages/google-cloud-dataflow-client/tests/unit/gapic/dataflow_v1beta3/test_jobs_v1_beta3.py @@ -2511,6 +2511,9 @@ def test_list_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, jobs.Job) for i in results) @@ -2599,6 +2602,8 @@ async def test_list_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2967,6 +2972,9 @@ def test_aggregated_list_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, jobs.Job) for i in results) @@ -3059,6 +3067,8 @@ async def test_aggregated_list_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3773,6 +3783,9 @@ def test_list_jobs_rest_pager(transport: str = "rest"): pager = client.list_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, jobs.Job) for i in results) @@ -3874,6 +3887,9 @@ def test_aggregated_list_jobs_rest_pager(transport: str = "rest"): pager = client.aggregated_list_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, jobs.Job) for i in results) diff --git a/packages/google-cloud-dataflow-client/tests/unit/gapic/dataflow_v1beta3/test_messages_v1_beta3.py b/packages/google-cloud-dataflow-client/tests/unit/gapic/dataflow_v1beta3/test_messages_v1_beta3.py index b44df5996635..10772bc1c90d 100644 --- a/packages/google-cloud-dataflow-client/tests/unit/gapic/dataflow_v1beta3/test_messages_v1_beta3.py +++ b/packages/google-cloud-dataflow-client/tests/unit/gapic/dataflow_v1beta3/test_messages_v1_beta3.py @@ -1672,6 +1672,9 @@ def test_list_job_messages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, messages.JobMessage) for i in results) @@ -1764,6 +1767,8 @@ async def test_list_job_messages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -1913,6 +1918,9 @@ def test_list_job_messages_rest_pager(transport: str = "rest"): pager = client.list_job_messages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, messages.JobMessage) for i in results) diff --git a/packages/google-cloud-dataflow-client/tests/unit/gapic/dataflow_v1beta3/test_metrics_v1_beta3.py b/packages/google-cloud-dataflow-client/tests/unit/gapic/dataflow_v1beta3/test_metrics_v1_beta3.py index bf5fb618fd96..dc5be102e79c 100644 --- a/packages/google-cloud-dataflow-client/tests/unit/gapic/dataflow_v1beta3/test_metrics_v1_beta3.py +++ b/packages/google-cloud-dataflow-client/tests/unit/gapic/dataflow_v1beta3/test_metrics_v1_beta3.py @@ -1899,6 +1899,9 @@ def test_get_job_execution_details_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metrics.StageSummary) for i in results) @@ -1991,6 +1994,8 @@ async def test_get_job_execution_details_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2379,6 +2384,9 @@ def test_get_stage_execution_details_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metrics.WorkerDetails) for i in results) @@ -2471,6 +2479,8 @@ async def test_get_stage_execution_details_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2659,6 +2669,9 @@ def test_get_job_execution_details_rest_pager(transport: str = "rest"): pager = client.get_job_execution_details(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metrics.StageSummary) for i in results) @@ -2766,6 +2779,9 @@ def test_get_stage_execution_details_rest_pager(transport: str = "rest"): pager = client.get_stage_execution_details(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metrics.WorkerDetails) for i in results) diff --git a/packages/google-cloud-dataform/noxfile.py b/packages/google-cloud-dataform/noxfile.py index 19c4147fe1de..49180f374857 100644 --- a/packages/google-cloud-dataform/noxfile.py +++ b/packages/google-cloud-dataform/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-dataform/testing/constraints-3.15.txt b/packages/google-cloud-dataform/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-dataform/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-dataform/tests/unit/gapic/dataform_v1/test_dataform.py b/packages/google-cloud-dataform/tests/unit/gapic/dataform_v1/test_dataform.py index 81e4f50cb6f7..1d4955bf3e4f 100644 --- a/packages/google-cloud-dataform/tests/unit/gapic/dataform_v1/test_dataform.py +++ b/packages/google-cloud-dataform/tests/unit/gapic/dataform_v1/test_dataform.py @@ -3429,6 +3429,9 @@ def test_query_team_folder_contents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3526,6 +3529,8 @@ async def test_query_team_folder_contents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3899,6 +3904,9 @@ def test_search_team_folders_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3994,6 +4002,8 @@ async def test_search_team_folders_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6156,6 +6166,9 @@ def test_query_folder_contents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6251,6 +6264,8 @@ async def test_query_folder_contents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6713,6 +6728,9 @@ def test_query_user_root_contents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6808,6 +6826,8 @@ async def test_query_user_root_contents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7607,6 +7627,9 @@ def test_list_repositories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.Repository) for i in results) @@ -7699,6 +7722,8 @@ async def test_list_repositories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10397,6 +10422,9 @@ def test_query_repository_directory_contents_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.DirectoryEntry) for i in results) @@ -10489,6 +10517,8 @@ async def test_query_repository_directory_contents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10860,6 +10890,9 @@ def test_fetch_repository_history_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.CommitLogEntry) for i in results) @@ -10952,6 +10985,8 @@ async def test_fetch_repository_history_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11914,6 +11949,9 @@ def test_list_workspaces_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.Workspace) for i in results) @@ -12002,6 +12040,8 @@ async def test_list_workspaces_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15367,6 +15407,9 @@ def test_query_directory_contents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.DirectoryEntry) for i in results) @@ -15459,6 +15502,8 @@ async def test_query_directory_contents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15809,6 +15854,9 @@ def test_search_files_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.SearchResult) for i in results) @@ -15897,6 +15945,8 @@ async def test_search_files_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18025,6 +18075,9 @@ def test_list_release_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.ReleaseConfig) for i in results) @@ -18117,6 +18170,8 @@ async def test_list_release_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20045,6 +20100,9 @@ def test_list_compilation_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.CompilationResult) for i in results) @@ -20137,6 +20195,8 @@ async def test_list_compilation_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -21242,6 +21302,9 @@ def test_query_compilation_result_actions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.CompilationResultAction) for i in results) @@ -21334,6 +21397,8 @@ async def test_query_compilation_result_actions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -21793,6 +21858,9 @@ def test_list_workflow_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.WorkflowConfig) for i in results) @@ -21885,6 +21953,8 @@ async def test_list_workflow_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -23801,6 +23871,9 @@ def test_list_workflow_invocations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.WorkflowInvocation) for i in results) @@ -23893,6 +23966,8 @@ async def test_list_workflow_invocations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -25586,6 +25661,9 @@ def test_query_workflow_invocation_actions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.WorkflowInvocationAction) for i in results) @@ -25678,6 +25756,8 @@ async def test_query_workflow_invocation_actions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -28460,6 +28540,9 @@ def test_query_team_folder_contents_rest_pager(transport: str = "rest"): pager = client.query_team_folder_contents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -28671,6 +28754,9 @@ def test_search_team_folders_rest_pager(transport: str = "rest"): pager = client.search_team_folders(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -29836,6 +29922,9 @@ def test_query_folder_contents_rest_pager(transport: str = "rest"): pager = client.query_folder_contents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -30104,6 +30193,9 @@ def test_query_user_root_contents_rest_pager(transport: str = "rest"): pager = client.query_user_root_contents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -30545,6 +30637,9 @@ def test_list_repositories_rest_pager(transport: str = "rest"): pager = client.list_repositories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.Repository) for i in results) @@ -31984,6 +32079,9 @@ def test_query_repository_directory_contents_rest_pager(transport: str = "rest") pager = client.query_repository_directory_contents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.DirectoryEntry) for i in results) @@ -32191,6 +32289,9 @@ def test_fetch_repository_history_rest_pager(transport: str = "rest"): pager = client.fetch_repository_history(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.CommitLogEntry) for i in results) @@ -32711,6 +32812,9 @@ def test_list_workspaces_rest_pager(transport: str = "rest"): pager = client.list_workspaces(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.Workspace) for i in results) @@ -34520,6 +34624,9 @@ def test_query_directory_contents_rest_pager(transport: str = "rest"): pager = client.query_directory_contents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.DirectoryEntry) for i in results) @@ -34718,6 +34825,9 @@ def test_search_files_rest_pager(transport: str = "rest"): pager = client.search_files(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.SearchResult) for i in results) @@ -35942,6 +36052,9 @@ def test_list_release_configs_rest_pager(transport: str = "rest"): pager = client.list_release_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.ReleaseConfig) for i in results) @@ -36976,6 +37089,9 @@ def test_list_compilation_results_rest_pager(transport: str = "rest"): pager = client.list_compilation_results(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.CompilationResult) for i in results) @@ -37572,6 +37688,9 @@ def test_query_compilation_result_actions_rest_pager(transport: str = "rest"): pager = client.query_compilation_result_actions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.CompilationResultAction) for i in results) @@ -37839,6 +37958,9 @@ def test_list_workflow_configs_rest_pager(transport: str = "rest"): pager = client.list_workflow_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.WorkflowConfig) for i in results) @@ -38873,6 +38995,9 @@ def test_list_workflow_invocations_rest_pager(transport: str = "rest"): pager = client.list_workflow_invocations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.WorkflowInvocation) for i in results) @@ -39773,6 +39898,9 @@ def test_query_workflow_invocation_actions_rest_pager(transport: str = "rest"): pager = client.query_workflow_invocation_actions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.WorkflowInvocationAction) for i in results) diff --git a/packages/google-cloud-dataform/tests/unit/gapic/dataform_v1beta1/test_dataform.py b/packages/google-cloud-dataform/tests/unit/gapic/dataform_v1beta1/test_dataform.py index c3d36adbebbd..18d23ecfa666 100644 --- a/packages/google-cloud-dataform/tests/unit/gapic/dataform_v1beta1/test_dataform.py +++ b/packages/google-cloud-dataform/tests/unit/gapic/dataform_v1beta1/test_dataform.py @@ -3431,6 +3431,9 @@ def test_query_team_folder_contents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3528,6 +3531,8 @@ async def test_query_team_folder_contents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3901,6 +3906,9 @@ def test_search_team_folders_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3996,6 +4004,8 @@ async def test_search_team_folders_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6160,6 +6170,9 @@ def test_query_folder_contents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6255,6 +6268,8 @@ async def test_query_folder_contents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6717,6 +6732,9 @@ def test_query_user_root_contents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6812,6 +6830,8 @@ async def test_query_user_root_contents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7611,6 +7631,9 @@ def test_list_repositories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.Repository) for i in results) @@ -7703,6 +7726,8 @@ async def test_list_repositories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10760,6 +10785,9 @@ def test_query_repository_directory_contents_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.DirectoryEntry) for i in results) @@ -10852,6 +10880,8 @@ async def test_query_repository_directory_contents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11223,6 +11253,9 @@ def test_fetch_repository_history_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.CommitLogEntry) for i in results) @@ -11315,6 +11348,8 @@ async def test_fetch_repository_history_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12277,6 +12312,9 @@ def test_list_workspaces_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.Workspace) for i in results) @@ -12365,6 +12403,8 @@ async def test_list_workspaces_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15730,6 +15770,9 @@ def test_query_directory_contents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.DirectoryEntry) for i in results) @@ -15822,6 +15865,8 @@ async def test_query_directory_contents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16172,6 +16217,9 @@ def test_search_files_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.SearchResult) for i in results) @@ -16260,6 +16308,8 @@ async def test_search_files_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18388,6 +18438,9 @@ def test_list_release_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.ReleaseConfig) for i in results) @@ -18480,6 +18533,8 @@ async def test_list_release_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20408,6 +20463,9 @@ def test_list_compilation_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.CompilationResult) for i in results) @@ -20500,6 +20558,8 @@ async def test_list_compilation_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -21605,6 +21665,9 @@ def test_query_compilation_result_actions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.CompilationResultAction) for i in results) @@ -21697,6 +21760,8 @@ async def test_query_compilation_result_actions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -22156,6 +22221,9 @@ def test_list_workflow_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.WorkflowConfig) for i in results) @@ -22248,6 +22316,8 @@ async def test_list_workflow_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -24164,6 +24234,9 @@ def test_list_workflow_invocations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.WorkflowInvocation) for i in results) @@ -24256,6 +24329,8 @@ async def test_list_workflow_invocations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -25949,6 +26024,9 @@ def test_query_workflow_invocation_actions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.WorkflowInvocationAction) for i in results) @@ -26041,6 +26119,8 @@ async def test_query_workflow_invocation_actions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -28825,6 +28905,9 @@ def test_query_team_folder_contents_rest_pager(transport: str = "rest"): pager = client.query_team_folder_contents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -29036,6 +29119,9 @@ def test_search_team_folders_rest_pager(transport: str = "rest"): pager = client.search_team_folders(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -30206,6 +30292,9 @@ def test_query_folder_contents_rest_pager(transport: str = "rest"): pager = client.query_folder_contents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -30474,6 +30563,9 @@ def test_query_user_root_contents_rest_pager(transport: str = "rest"): pager = client.query_user_root_contents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -30915,6 +31007,9 @@ def test_list_repositories_rest_pager(transport: str = "rest"): pager = client.list_repositories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.Repository) for i in results) @@ -32543,6 +32638,9 @@ def test_query_repository_directory_contents_rest_pager(transport: str = "rest") pager = client.query_repository_directory_contents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.DirectoryEntry) for i in results) @@ -32750,6 +32848,9 @@ def test_fetch_repository_history_rest_pager(transport: str = "rest"): pager = client.fetch_repository_history(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.CommitLogEntry) for i in results) @@ -33270,6 +33371,9 @@ def test_list_workspaces_rest_pager(transport: str = "rest"): pager = client.list_workspaces(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.Workspace) for i in results) @@ -35079,6 +35183,9 @@ def test_query_directory_contents_rest_pager(transport: str = "rest"): pager = client.query_directory_contents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.DirectoryEntry) for i in results) @@ -35277,6 +35384,9 @@ def test_search_files_rest_pager(transport: str = "rest"): pager = client.search_files(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.SearchResult) for i in results) @@ -36501,6 +36611,9 @@ def test_list_release_configs_rest_pager(transport: str = "rest"): pager = client.list_release_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.ReleaseConfig) for i in results) @@ -37535,6 +37648,9 @@ def test_list_compilation_results_rest_pager(transport: str = "rest"): pager = client.list_compilation_results(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.CompilationResult) for i in results) @@ -38131,6 +38247,9 @@ def test_query_compilation_result_actions_rest_pager(transport: str = "rest"): pager = client.query_compilation_result_actions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.CompilationResultAction) for i in results) @@ -38398,6 +38517,9 @@ def test_list_workflow_configs_rest_pager(transport: str = "rest"): pager = client.list_workflow_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.WorkflowConfig) for i in results) @@ -39432,6 +39554,9 @@ def test_list_workflow_invocations_rest_pager(transport: str = "rest"): pager = client.list_workflow_invocations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.WorkflowInvocation) for i in results) @@ -40332,6 +40457,9 @@ def test_query_workflow_invocation_actions_rest_pager(transport: str = "rest"): pager = client.query_workflow_invocation_actions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataform.WorkflowInvocationAction) for i in results) diff --git a/packages/google-cloud-datalabeling/noxfile.py b/packages/google-cloud-datalabeling/noxfile.py index e4f28c74368b..2495c28265f4 100644 --- a/packages/google-cloud-datalabeling/noxfile.py +++ b/packages/google-cloud-datalabeling/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-datalabeling/testing/constraints-3.15.txt b/packages/google-cloud-datalabeling/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-datalabeling/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-datalabeling/tests/unit/gapic/datalabeling_v1beta1/test_data_labeling_service.py b/packages/google-cloud-datalabeling/tests/unit/gapic/datalabeling_v1beta1/test_data_labeling_service.py index 27b75dafad82..c7cdb9570511 100644 --- a/packages/google-cloud-datalabeling/tests/unit/gapic/datalabeling_v1beta1/test_data_labeling_service.py +++ b/packages/google-cloud-datalabeling/tests/unit/gapic/datalabeling_v1beta1/test_data_labeling_service.py @@ -2436,6 +2436,9 @@ def test_list_datasets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataset.Dataset) for i in results) @@ -2524,6 +2527,8 @@ async def test_list_datasets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4324,6 +4329,9 @@ def test_list_data_items_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataset.DataItem) for i in results) @@ -4412,6 +4420,8 @@ async def test_list_data_items_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5254,6 +5264,9 @@ def test_list_annotated_datasets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataset.AnnotatedDataset) for i in results) @@ -5346,6 +5359,8 @@ async def test_list_annotated_datasets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7447,6 +7462,9 @@ def test_list_examples_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataset.Example) for i in results) @@ -7535,6 +7553,8 @@ async def test_list_examples_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8732,6 +8752,9 @@ def test_list_annotation_spec_sets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -8826,6 +8849,8 @@ async def test_list_annotation_spec_sets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10317,6 +10342,9 @@ def test_list_instructions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instruction.Instruction) for i in results) @@ -10409,6 +10437,8 @@ async def test_list_instructions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11539,6 +11569,9 @@ def test_search_evaluations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.Evaluation) for i in results) @@ -11631,6 +11664,8 @@ async def test_search_evaluations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12086,6 +12121,9 @@ def test_search_example_comparisons_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -12184,6 +12222,8 @@ async def test_search_example_comparisons_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14772,6 +14812,9 @@ def test_list_evaluation_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation_job.EvaluationJob) for i in results) @@ -14864,6 +14907,8 @@ async def test_list_evaluation_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-dataplex/noxfile.py b/packages/google-cloud-dataplex/noxfile.py index 861b281f03a7..5a0a9f1d6663 100644 --- a/packages/google-cloud-dataplex/noxfile.py +++ b/packages/google-cloud-dataplex/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-dataplex/testing/constraints-3.15.txt b/packages/google-cloud-dataplex/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-dataplex/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_business_glossary_service.py b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_business_glossary_service.py index af365745fb16..ce88ecaa7386 100644 --- a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_business_glossary_service.py +++ b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_business_glossary_service.py @@ -3153,6 +3153,9 @@ def test_list_glossaries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, business_glossary.Glossary) for i in results) @@ -3241,6 +3244,8 @@ async def test_list_glossaries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5146,6 +5151,9 @@ def test_list_glossary_categories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, business_glossary.GlossaryCategory) for i in results) @@ -5238,6 +5246,8 @@ async def test_list_glossary_categories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7132,6 +7142,9 @@ def test_list_glossary_terms_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, business_glossary.GlossaryTerm) for i in results) @@ -7224,6 +7237,8 @@ async def test_list_glossary_terms_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8302,6 +8317,9 @@ def test_list_glossaries_rest_pager(transport: str = "rest"): pager = client.list_glossaries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, business_glossary.Glossary) for i in results) @@ -9348,6 +9366,9 @@ def test_list_glossary_categories_rest_pager(transport: str = "rest"): pager = client.list_glossary_categories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, business_glossary.GlossaryCategory) for i in results) @@ -10384,6 +10405,9 @@ def test_list_glossary_terms_rest_pager(transport: str = "rest"): pager = client.list_glossary_terms(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, business_glossary.GlossaryTerm) for i in results) diff --git a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_catalog_service.py b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_catalog_service.py index efa52f8ce686..e9fb0b182961 100644 --- a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_catalog_service.py +++ b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_catalog_service.py @@ -2790,6 +2790,9 @@ def test_list_entry_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.EntryType) for i in results) @@ -2878,6 +2881,8 @@ async def test_list_entry_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4748,6 +4753,9 @@ def test_list_aspect_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.AspectType) for i in results) @@ -4840,6 +4848,8 @@ async def test_list_aspect_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6714,6 +6724,9 @@ def test_list_entry_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.EntryGroup) for i in results) @@ -6806,6 +6819,8 @@ async def test_list_entry_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8602,6 +8617,9 @@ def test_list_entries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.Entry) for i in results) @@ -8690,6 +8708,8 @@ async def test_list_entries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9978,6 +9998,9 @@ def test_search_entries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.SearchEntriesResult) for i in results) @@ -10066,6 +10089,8 @@ async def test_search_entries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11220,6 +11245,9 @@ def test_list_metadata_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.MetadataJob) for i in results) @@ -11312,6 +11340,8 @@ async def test_list_metadata_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13046,6 +13076,9 @@ def test_lookup_entry_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.EntryLink) for i in results) @@ -13138,6 +13171,8 @@ async def test_lookup_entry_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14879,6 +14914,9 @@ def test_list_metadata_feeds_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.MetadataFeed) for i in results) @@ -14971,6 +15009,8 @@ async def test_list_metadata_feeds_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16578,6 +16618,9 @@ def test_list_entry_types_rest_pager(transport: str = "rest"): pager = client.list_entry_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.EntryType) for i in results) @@ -17623,6 +17666,9 @@ def test_list_aspect_types_rest_pager(transport: str = "rest"): pager = client.list_aspect_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.AspectType) for i in results) @@ -18671,6 +18717,9 @@ def test_list_entry_groups_rest_pager(transport: str = "rest"): pager = client.list_entry_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.EntryGroup) for i in results) @@ -19691,6 +19740,9 @@ def test_list_entries_rest_pager(transport: str = "rest"): pager = client.list_entries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.Entry) for i in results) @@ -20448,6 +20500,9 @@ def test_search_entries_rest_pager(transport: str = "rest"): pager = client.search_entries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.SearchEntriesResult) for i in results) @@ -21098,6 +21153,9 @@ def test_list_metadata_jobs_rest_pager(transport: str = "rest"): pager = client.list_metadata_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.MetadataJob) for i in results) @@ -22090,6 +22148,9 @@ def test_lookup_entry_links_rest_pager(transport: str = "rest"): pager = client.lookup_entry_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.EntryLink) for i in results) @@ -23049,6 +23110,9 @@ def test_list_metadata_feeds_rest_pager(transport: str = "rest"): pager = client.list_metadata_feeds(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.MetadataFeed) for i in results) diff --git a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_cmek_service.py b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_cmek_service.py index 79450c538913..b44706d1b149 100644 --- a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_cmek_service.py +++ b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_cmek_service.py @@ -2785,6 +2785,9 @@ def test_list_encryption_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cmek.EncryptionConfig) for i in results) @@ -2877,6 +2880,8 @@ async def test_list_encryption_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4134,6 +4139,9 @@ def test_list_encryption_configs_rest_pager(transport: str = "rest"): pager = client.list_encryption_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cmek.EncryptionConfig) for i in results) diff --git a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_data_product_service.py b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_data_product_service.py index 7254c907b05c..a01de2831464 100644 --- a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_data_product_service.py +++ b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_data_product_service.py @@ -2864,6 +2864,9 @@ def test_list_data_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_products.DataProduct) for i in results) @@ -2956,6 +2959,8 @@ async def test_list_data_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5497,6 +5502,9 @@ def test_list_data_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_products.DataAsset) for i in results) @@ -5585,6 +5593,8 @@ async def test_list_data_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6479,6 +6489,9 @@ def test_list_data_products_rest_pager(transport: str = "rest"): pager = client.list_data_products(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_products.DataProduct) for i in results) @@ -7919,6 +7932,9 @@ def test_list_data_assets_rest_pager(transport: str = "rest"): pager = client.list_data_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_products.DataAsset) for i in results) diff --git a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_data_scan_service.py b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_data_scan_service.py index 082127b40a08..b6253fd30e56 100644 --- a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_data_scan_service.py +++ b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_data_scan_service.py @@ -3119,6 +3119,9 @@ def test_list_data_scans_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datascans.DataScan) for i in results) @@ -3207,6 +3210,8 @@ async def test_list_data_scans_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4335,6 +4340,9 @@ def test_list_data_scan_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datascans.DataScanJob) for i in results) @@ -4427,6 +4435,8 @@ async def test_list_data_scan_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6167,6 +6177,9 @@ def test_list_data_scans_rest_pager(transport: str = "rest"): pager = client.list_data_scans(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datascans.DataScan) for i in results) @@ -6796,6 +6809,9 @@ def test_list_data_scan_jobs_rest_pager(transport: str = "rest"): pager = client.list_data_scan_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datascans.DataScanJob) for i in results) diff --git a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_data_taxonomy_service.py b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_data_taxonomy_service.py index a88f6d41f201..634caab32806 100644 --- a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_data_taxonomy_service.py +++ b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_data_taxonomy_service.py @@ -2880,6 +2880,9 @@ def test_list_data_taxonomies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_taxonomy.DataTaxonomy) for i in results) @@ -2972,6 +2975,8 @@ async def test_list_data_taxonomies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4892,6 +4897,9 @@ def test_list_data_attribute_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_taxonomy.DataAttributeBinding) for i in results) @@ -4984,6 +4992,8 @@ async def test_list_data_attribute_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6889,6 +6899,9 @@ def test_list_data_attributes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_taxonomy.DataAttribute) for i in results) @@ -6981,6 +6994,8 @@ async def test_list_data_attributes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8265,6 +8280,9 @@ def test_list_data_taxonomies_rest_pager(transport: str = "rest"): pager = client.list_data_taxonomies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_taxonomy.DataTaxonomy) for i in results) @@ -9365,6 +9383,9 @@ def test_list_data_attribute_bindings_rest_pager(transport: str = "rest"): pager = client.list_data_attribute_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_taxonomy.DataAttributeBinding) for i in results) @@ -10431,6 +10452,9 @@ def test_list_data_attributes_rest_pager(transport: str = "rest"): pager = client.list_data_attributes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_taxonomy.DataAttribute) for i in results) diff --git a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_dataplex_service.py b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_dataplex_service.py index e5a370cd5d75..2901b6a26cdd 100644 --- a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_dataplex_service.py +++ b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_dataplex_service.py @@ -2760,6 +2760,9 @@ def test_list_lakes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Lake) for i in results) @@ -2848,6 +2851,8 @@ async def test_list_lakes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3632,6 +3637,9 @@ def test_list_lake_actions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Action) for i in results) @@ -3724,6 +3732,8 @@ async def test_list_lake_actions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5168,6 +5178,9 @@ def test_list_zones_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Zone) for i in results) @@ -5256,6 +5269,8 @@ async def test_list_zones_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6040,6 +6055,9 @@ def test_list_zone_actions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Action) for i in results) @@ -6132,6 +6150,8 @@ async def test_list_zone_actions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7578,6 +7598,9 @@ def test_list_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Asset) for i in results) @@ -7666,6 +7689,8 @@ async def test_list_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8448,6 +8473,9 @@ def test_list_asset_actions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Action) for i in results) @@ -8540,6 +8568,8 @@ async def test_list_asset_actions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9988,6 +10018,9 @@ def test_list_tasks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tasks.Task) for i in results) @@ -10076,6 +10109,8 @@ async def test_list_tasks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10836,6 +10871,9 @@ def test_list_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tasks.Job) for i in results) @@ -10924,6 +10962,8 @@ async def test_list_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12776,6 +12816,9 @@ def test_list_lakes_rest_pager(transport: str = "rest"): pager = client.list_lakes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Lake) for i in results) @@ -13207,6 +13250,9 @@ def test_list_lake_actions_rest_pager(transport: str = "rest"): pager = client.list_lake_actions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Action) for i in results) @@ -14051,6 +14097,9 @@ def test_list_zones_rest_pager(transport: str = "rest"): pager = client.list_zones(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Zone) for i in results) @@ -14489,6 +14538,9 @@ def test_list_zone_actions_rest_pager(transport: str = "rest"): pager = client.list_zone_actions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Action) for i in results) @@ -15339,6 +15391,9 @@ def test_list_assets_rest_pager(transport: str = "rest"): pager = client.list_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Asset) for i in results) @@ -15779,6 +15834,9 @@ def test_list_asset_actions_rest_pager(transport: str = "rest"): pager = client.list_asset_actions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Action) for i in results) @@ -16623,6 +16681,9 @@ def test_list_tasks_rest_pager(transport: str = "rest"): pager = client.list_tasks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tasks.Task) for i in results) @@ -17057,6 +17118,9 @@ def test_list_jobs_rest_pager(transport: str = "rest"): pager = client.list_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tasks.Job) for i in results) diff --git a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_metadata_service.py b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_metadata_service.py index ff5eccc63563..5370914bbb2c 100644 --- a/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_metadata_service.py +++ b/packages/google-cloud-dataplex/tests/unit/gapic/dataplex_v1/test_metadata_service.py @@ -3065,6 +3065,9 @@ def test_list_entities_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metadata_.Entity) for i in results) @@ -3153,6 +3156,8 @@ async def test_list_entities_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4575,6 +4580,9 @@ def test_list_partitions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metadata_.Partition) for i in results) @@ -4663,6 +4671,8 @@ async def test_list_partitions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5655,6 +5665,9 @@ def test_list_entities_rest_pager(transport: str = "rest"): pager = client.list_entities(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metadata_.Entity) for i in results) @@ -6467,6 +6480,9 @@ def test_list_partitions_rest_pager(transport: str = "rest"): pager = client.list_partitions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metadata_.Partition) for i in results) diff --git a/packages/google-cloud-dataproc-metastore/noxfile.py b/packages/google-cloud-dataproc-metastore/noxfile.py index 47eff28054f9..5ea5ed1a3bc8 100644 --- a/packages/google-cloud-dataproc-metastore/noxfile.py +++ b/packages/google-cloud-dataproc-metastore/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-dataproc-metastore/testing/constraints-3.15.txt b/packages/google-cloud-dataproc-metastore/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-dataproc-metastore/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1/test_dataproc_metastore.py b/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1/test_dataproc_metastore.py index 7dacf621bfda..ce06abc8da34 100644 --- a/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1/test_dataproc_metastore.py +++ b/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1/test_dataproc_metastore.py @@ -1760,6 +1760,9 @@ def test_list_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Service) for i in results) @@ -1848,6 +1851,8 @@ async def test_list_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3727,6 +3732,9 @@ def test_list_metadata_imports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.MetadataImport) for i in results) @@ -3819,6 +3827,8 @@ async def test_list_metadata_imports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5979,6 +5989,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Backup) for i in results) @@ -6067,6 +6080,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8162,6 +8177,9 @@ def test_list_services_rest_pager(transport: str = "rest"): pager = client.list_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Service) for i in results) @@ -9212,6 +9230,9 @@ def test_list_metadata_imports_rest_pager(transport: str = "rest"): pager = client.list_metadata_imports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.MetadataImport) for i in results) @@ -10415,6 +10436,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Backup) for i in results) diff --git a/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1/test_dataproc_metastore_federation.py b/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1/test_dataproc_metastore_federation.py index 09b2547bd11e..1efd7062a610 100644 --- a/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1/test_dataproc_metastore_federation.py +++ b/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1/test_dataproc_metastore_federation.py @@ -1825,6 +1825,9 @@ def test_list_federations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore_federation.Federation) for i in results) @@ -1913,6 +1916,8 @@ async def test_list_federations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3631,6 +3636,9 @@ def test_list_federations_rest_pager(transport: str = "rest"): pager = client.list_federations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore_federation.Federation) for i in results) diff --git a/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1alpha/test_dataproc_metastore.py b/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1alpha/test_dataproc_metastore.py index 1dedf9343282..1488c585c033 100644 --- a/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1alpha/test_dataproc_metastore.py +++ b/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1alpha/test_dataproc_metastore.py @@ -1760,6 +1760,9 @@ def test_list_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Service) for i in results) @@ -1848,6 +1851,8 @@ async def test_list_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3727,6 +3732,9 @@ def test_list_metadata_imports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.MetadataImport) for i in results) @@ -3819,6 +3827,8 @@ async def test_list_metadata_imports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5979,6 +5989,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Backup) for i in results) @@ -6067,6 +6080,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8417,6 +8432,9 @@ def test_list_services_rest_pager(transport: str = "rest"): pager = client.list_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Service) for i in results) @@ -9470,6 +9488,9 @@ def test_list_metadata_imports_rest_pager(transport: str = "rest"): pager = client.list_metadata_imports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.MetadataImport) for i in results) @@ -10673,6 +10694,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Backup) for i in results) diff --git a/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1alpha/test_dataproc_metastore_federation.py b/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1alpha/test_dataproc_metastore_federation.py index 1d64ff7afe9b..e3657bb280c0 100644 --- a/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1alpha/test_dataproc_metastore_federation.py +++ b/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1alpha/test_dataproc_metastore_federation.py @@ -1825,6 +1825,9 @@ def test_list_federations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore_federation.Federation) for i in results) @@ -1913,6 +1916,8 @@ async def test_list_federations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3631,6 +3636,9 @@ def test_list_federations_rest_pager(transport: str = "rest"): pager = client.list_federations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore_federation.Federation) for i in results) diff --git a/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1beta/test_dataproc_metastore.py b/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1beta/test_dataproc_metastore.py index 38785d3cbcb7..70f1ab109723 100644 --- a/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1beta/test_dataproc_metastore.py +++ b/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1beta/test_dataproc_metastore.py @@ -1760,6 +1760,9 @@ def test_list_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Service) for i in results) @@ -1848,6 +1851,8 @@ async def test_list_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3727,6 +3732,9 @@ def test_list_metadata_imports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.MetadataImport) for i in results) @@ -3819,6 +3827,8 @@ async def test_list_metadata_imports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5979,6 +5989,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Backup) for i in results) @@ -6067,6 +6080,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8417,6 +8432,9 @@ def test_list_services_rest_pager(transport: str = "rest"): pager = client.list_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Service) for i in results) @@ -9470,6 +9488,9 @@ def test_list_metadata_imports_rest_pager(transport: str = "rest"): pager = client.list_metadata_imports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.MetadataImport) for i in results) @@ -10673,6 +10694,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore.Backup) for i in results) diff --git a/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1beta/test_dataproc_metastore_federation.py b/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1beta/test_dataproc_metastore_federation.py index 0ed91e8b72a2..02ea1a891a49 100644 --- a/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1beta/test_dataproc_metastore_federation.py +++ b/packages/google-cloud-dataproc-metastore/tests/unit/gapic/metastore_v1beta/test_dataproc_metastore_federation.py @@ -1825,6 +1825,9 @@ def test_list_federations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore_federation.Federation) for i in results) @@ -1913,6 +1916,8 @@ async def test_list_federations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3631,6 +3636,9 @@ def test_list_federations_rest_pager(transport: str = "rest"): pager = client.list_federations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metastore_federation.Federation) for i in results) diff --git a/packages/google-cloud-dataproc/noxfile.py b/packages/google-cloud-dataproc/noxfile.py index 4c1c13c5d053..9e2ef6ed7dbe 100644 --- a/packages/google-cloud-dataproc/noxfile.py +++ b/packages/google-cloud-dataproc/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-dataproc/testing/constraints-3.15.txt b/packages/google-cloud-dataproc/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-dataproc/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_autoscaling_policy_service.py b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_autoscaling_policy_service.py index 0cf4fb922e3b..b37215118f09 100644 --- a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_autoscaling_policy_service.py +++ b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_autoscaling_policy_service.py @@ -2885,6 +2885,9 @@ def test_list_autoscaling_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2979,6 +2982,8 @@ async def test_list_autoscaling_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4188,6 +4193,9 @@ def test_list_autoscaling_policies_rest_pager(transport: str = "rest"): pager = client.list_autoscaling_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_batch_controller.py b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_batch_controller.py index de8e55f1a687..8552cabddc01 100644 --- a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_batch_controller.py +++ b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_batch_controller.py @@ -2436,6 +2436,9 @@ def test_list_batches_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, batches.Batch) for i in results) @@ -2524,6 +2527,8 @@ async def test_list_batches_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3509,6 +3514,9 @@ def test_list_batches_rest_pager(transport: str = "rest"): pager = client.list_batches(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, batches.Batch) for i in results) diff --git a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_cluster_controller.py b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_cluster_controller.py index 026ebf0a39ed..4ee6bb12b820 100644 --- a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_cluster_controller.py +++ b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_cluster_controller.py @@ -3746,6 +3746,9 @@ def test_list_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, clusters.Cluster) for i in results) @@ -3834,6 +3837,8 @@ async def test_list_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5624,6 +5629,9 @@ def test_list_clusters_rest_pager(transport: str = "rest"): pager = client.list_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, clusters.Cluster) for i in results) diff --git a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_job_controller.py b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_job_controller.py index 967afafabb48..6bebe3bfd1b0 100644 --- a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_job_controller.py +++ b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_job_controller.py @@ -2830,6 +2830,9 @@ def test_list_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, jobs.Job) for i in results) @@ -2918,6 +2921,8 @@ async def test_list_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4782,6 +4787,9 @@ def test_list_jobs_rest_pager(transport: str = "rest"): pager = client.list_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, jobs.Job) for i in results) diff --git a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_session_controller.py b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_session_controller.py index 8d9c10cec56b..fc524913e316 100644 --- a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_session_controller.py +++ b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_session_controller.py @@ -2450,6 +2450,9 @@ def test_list_sessions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sessions.Session) for i in results) @@ -2538,6 +2541,8 @@ async def test_list_sessions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3901,6 +3906,9 @@ def test_list_sessions_rest_pager(transport: str = "rest"): pager = client.list_sessions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sessions.Session) for i in results) diff --git a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_session_template_controller.py b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_session_template_controller.py index 1e395ff35ba9..bdc3351c1385 100644 --- a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_session_template_controller.py +++ b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_session_template_controller.py @@ -2890,6 +2890,9 @@ def test_list_session_templates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session_templates.SessionTemplate) for i in results) @@ -2982,6 +2985,8 @@ async def test_list_session_templates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4187,6 +4192,9 @@ def test_list_session_templates_rest_pager(transport: str = "rest"): pager = client.list_session_templates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session_templates.SessionTemplate) for i in results) diff --git a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_workflow_template_service.py b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_workflow_template_service.py index eba33660ce14..e9b3010922cf 100644 --- a/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_workflow_template_service.py +++ b/packages/google-cloud-dataproc/tests/unit/gapic/dataproc_v1/test_workflow_template_service.py @@ -3591,6 +3591,9 @@ def test_list_workflow_templates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workflow_templates.WorkflowTemplate) for i in results) @@ -3683,6 +3686,8 @@ async def test_list_workflow_templates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5280,6 +5285,9 @@ def test_list_workflow_templates_rest_pager(transport: str = "rest"): pager = client.list_workflow_templates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workflow_templates.WorkflowTemplate) for i in results) diff --git a/packages/google-cloud-datastore/noxfile.py b/packages/google-cloud-datastore/noxfile.py index af42d740478e..ccc07db8b6e9 100644 --- a/packages/google-cloud-datastore/noxfile.py +++ b/packages/google-cloud-datastore/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", # TODO(https://github.com/googleapis/google-cloud-python/issues/16083) @@ -574,7 +583,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-datastore/testing/constraints-3.15.txt b/packages/google-cloud-datastore/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-datastore/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-datastore/tests/unit/gapic/datastore_admin_v1/test_datastore_admin.py b/packages/google-cloud-datastore/tests/unit/gapic/datastore_admin_v1/test_datastore_admin.py index fa1e1e2e2597..07c2fdbecda9 100644 --- a/packages/google-cloud-datastore/tests/unit/gapic/datastore_admin_v1/test_datastore_admin.py +++ b/packages/google-cloud-datastore/tests/unit/gapic/datastore_admin_v1/test_datastore_admin.py @@ -3101,6 +3101,9 @@ def test_list_indexes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, index.Index) for i in results) @@ -3189,6 +3192,8 @@ async def test_list_indexes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3836,6 +3841,9 @@ def test_list_indexes_rest_pager(transport: str = "rest"): pager = client.list_indexes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, index.Index) for i in results) diff --git a/packages/google-cloud-datastream/noxfile.py b/packages/google-cloud-datastream/noxfile.py index 2769c61b3d26..0678cabb4c34 100644 --- a/packages/google-cloud-datastream/noxfile.py +++ b/packages/google-cloud-datastream/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-datastream/testing/constraints-3.15.txt b/packages/google-cloud-datastream/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-datastream/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-datastream/tests/unit/gapic/datastream_v1/test_datastream.py b/packages/google-cloud-datastream/tests/unit/gapic/datastream_v1/test_datastream.py index e20c14e0cc2a..be7122b65b42 100644 --- a/packages/google-cloud-datastream/tests/unit/gapic/datastream_v1/test_datastream.py +++ b/packages/google-cloud-datastream/tests/unit/gapic/datastream_v1/test_datastream.py @@ -1704,6 +1704,9 @@ def test_list_connection_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1798,6 +1801,8 @@ async def test_list_connection_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3949,6 +3954,9 @@ def test_list_streams_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datastream_resources.Stream) for i in results) @@ -4037,6 +4045,8 @@ async def test_list_streams_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6703,6 +6713,9 @@ def test_list_stream_objects_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datastream_resources.StreamObject) for i in results) @@ -6795,6 +6808,8 @@ async def test_list_stream_objects_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7901,6 +7916,9 @@ def test_fetch_static_ips_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -7989,6 +8007,8 @@ async def test_fetch_static_ips_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9192,6 +9212,9 @@ def test_list_private_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -9286,6 +9309,8 @@ async def test_list_private_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10763,6 +10788,9 @@ def test_list_routes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datastream_resources.Route) for i in results) @@ -10851,6 +10879,8 @@ async def test_list_routes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11490,6 +11520,9 @@ def test_list_connection_profiles_rest_pager(transport: str = "rest"): pager = client.list_connection_profiles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -12683,6 +12716,9 @@ def test_list_streams_rest_pager(transport: str = "rest"): pager = client.list_streams(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datastream_resources.Stream) for i in results) @@ -14150,6 +14186,9 @@ def test_list_stream_objects_rest_pager(transport: str = "rest"): pager = client.list_stream_objects(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datastream_resources.StreamObject) for i in results) @@ -14774,6 +14813,9 @@ def test_fetch_static_ips_rest_pager(transport: str = "rest"): pager = client.fetch_static_ips(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -15456,6 +15498,9 @@ def test_list_private_connections_rest_pager(transport: str = "rest"): pager = client.list_private_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -16311,6 +16356,9 @@ def test_list_routes_rest_pager(transport: str = "rest"): pager = client.list_routes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datastream_resources.Route) for i in results) diff --git a/packages/google-cloud-datastream/tests/unit/gapic/datastream_v1alpha1/test_datastream.py b/packages/google-cloud-datastream/tests/unit/gapic/datastream_v1alpha1/test_datastream.py index 17056e6b9e4f..6b8527ffe851 100644 --- a/packages/google-cloud-datastream/tests/unit/gapic/datastream_v1alpha1/test_datastream.py +++ b/packages/google-cloud-datastream/tests/unit/gapic/datastream_v1alpha1/test_datastream.py @@ -1698,6 +1698,9 @@ def test_list_connection_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1792,6 +1795,8 @@ async def test_list_connection_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3935,6 +3940,9 @@ def test_list_streams_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datastream_resources.Stream) for i in results) @@ -4023,6 +4031,8 @@ async def test_list_streams_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6053,6 +6063,9 @@ def test_fetch_static_ips_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -6141,6 +6154,8 @@ async def test_fetch_static_ips_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7336,6 +7351,9 @@ def test_list_private_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -7430,6 +7448,8 @@ async def test_list_private_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8907,6 +8927,9 @@ def test_list_routes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datastream_resources.Route) for i in results) @@ -8995,6 +9018,8 @@ async def test_list_routes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9634,6 +9659,9 @@ def test_list_connection_profiles_rest_pager(transport: str = "rest"): pager = client.list_connection_profiles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -10820,6 +10848,9 @@ def test_list_streams_rest_pager(transport: str = "rest"): pager = client.list_streams(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datastream_resources.Stream) for i in results) @@ -11887,6 +11918,9 @@ def test_fetch_static_ips_rest_pager(transport: str = "rest"): pager = client.fetch_static_ips(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -12565,6 +12599,9 @@ def test_list_private_connections_rest_pager(transport: str = "rest"): pager = client.list_private_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -13420,6 +13457,9 @@ def test_list_routes_rest_pager(transport: str = "rest"): pager = client.list_routes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datastream_resources.Route) for i in results) diff --git a/packages/google-cloud-deploy/noxfile.py b/packages/google-cloud-deploy/noxfile.py index 8b14ce1ff03a..9d234a0c0097 100644 --- a/packages/google-cloud-deploy/noxfile.py +++ b/packages/google-cloud-deploy/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-deploy/testing/constraints-3.15.txt b/packages/google-cloud-deploy/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-deploy/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-deploy/tests/unit/gapic/deploy_v1/test_cloud_deploy.py b/packages/google-cloud-deploy/tests/unit/gapic/deploy_v1/test_cloud_deploy.py index 7988fadd3c04..838a3650c736 100644 --- a/packages/google-cloud-deploy/tests/unit/gapic/deploy_v1/test_cloud_deploy.py +++ b/packages/google-cloud-deploy/tests/unit/gapic/deploy_v1/test_cloud_deploy.py @@ -1709,6 +1709,9 @@ def test_list_delivery_pipelines_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.DeliveryPipeline) for i in results) @@ -1801,6 +1804,8 @@ async def test_list_delivery_pipelines_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3685,6 +3690,9 @@ def test_list_targets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.Target) for i in results) @@ -3773,6 +3781,8 @@ async def test_list_targets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5940,6 +5950,9 @@ def test_list_custom_target_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.CustomTargetType) for i in results) @@ -6032,6 +6045,8 @@ async def test_list_custom_target_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7916,6 +7931,9 @@ def test_list_releases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.Release) for i in results) @@ -8004,6 +8022,8 @@ async def test_list_releases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10570,6 +10590,9 @@ def test_list_deploy_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.DeployPolicy) for i in results) @@ -10662,6 +10685,8 @@ async def test_list_deploy_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12422,6 +12447,9 @@ def test_list_rollouts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.Rollout) for i in results) @@ -12510,6 +12538,8 @@ async def test_list_rollouts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14362,6 +14392,9 @@ def test_list_job_runs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.JobRun) for i in results) @@ -14450,6 +14483,8 @@ async def test_list_job_runs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17298,6 +17333,9 @@ def test_list_automations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.Automation) for i in results) @@ -17386,6 +17424,8 @@ async def test_list_automations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18214,6 +18254,9 @@ def test_list_automation_runs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.AutomationRun) for i in results) @@ -18306,6 +18349,8 @@ async def test_list_automation_runs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18956,6 +19001,9 @@ def test_list_delivery_pipelines_rest_pager(transport: str = "rest"): pager = client.list_delivery_pipelines(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.DeliveryPipeline) for i in results) @@ -20036,6 +20084,9 @@ def test_list_targets_rest_pager(transport: str = "rest"): pager = client.list_targets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.Target) for i in results) @@ -21291,6 +21342,9 @@ def test_list_custom_target_types_rest_pager(transport: str = "rest"): pager = client.list_custom_target_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.CustomTargetType) for i in results) @@ -22374,6 +22428,9 @@ def test_list_releases_rest_pager(transport: str = "rest"): pager = client.list_releases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.Release) for i in results) @@ -23850,6 +23907,9 @@ def test_list_deploy_policies_rest_pager(transport: str = "rest"): pager = client.list_deploy_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.DeployPolicy) for i in results) @@ -24863,6 +24923,9 @@ def test_list_rollouts_rest_pager(transport: str = "rest"): pager = client.list_rollouts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.Rollout) for i in results) @@ -25927,6 +25990,9 @@ def test_list_job_runs_rest_pager(transport: str = "rest"): pager = client.list_job_runs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.JobRun) for i in results) @@ -27536,6 +27602,9 @@ def test_list_automations_rest_pager(transport: str = "rest"): pager = client.list_automations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.Automation) for i in results) @@ -27988,6 +28057,9 @@ def test_list_automation_runs_rest_pager(transport: str = "rest"): pager = client.list_automation_runs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_deploy.AutomationRun) for i in results) diff --git a/packages/google-cloud-developerconnect/noxfile.py b/packages/google-cloud-developerconnect/noxfile.py index e4b4e0709514..df21a091ab4c 100644 --- a/packages/google-cloud-developerconnect/noxfile.py +++ b/packages/google-cloud-developerconnect/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-developerconnect/testing/constraints-3.15.txt b/packages/google-cloud-developerconnect/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-developerconnect/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-developerconnect/tests/unit/gapic/developerconnect_v1/test_developer_connect.py b/packages/google-cloud-developerconnect/tests/unit/gapic/developerconnect_v1/test_developer_connect.py index 0dd26e675a3c..c398b60466ef 100644 --- a/packages/google-cloud-developerconnect/tests/unit/gapic/developerconnect_v1/test_developer_connect.py +++ b/packages/google-cloud-developerconnect/tests/unit/gapic/developerconnect_v1/test_developer_connect.py @@ -1747,6 +1747,9 @@ def test_list_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, developer_connect.Connection) for i in results) @@ -1835,6 +1838,8 @@ async def test_list_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4468,6 +4473,9 @@ def test_list_git_repository_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, developer_connect.GitRepositoryLink) for i in results) @@ -4560,6 +4568,8 @@ async def test_list_git_repository_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6065,6 +6075,9 @@ def test_fetch_linkable_git_repositories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6159,6 +6172,8 @@ async def test_fetch_linkable_git_repositories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6946,6 +6961,9 @@ def test_fetch_git_refs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -7034,6 +7052,8 @@ async def test_fetch_git_refs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7493,6 +7513,9 @@ def test_list_account_connectors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, developer_connect.AccountConnector) for i in results) @@ -7585,6 +7608,8 @@ async def test_list_account_connectors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9845,6 +9870,9 @@ def test_list_users_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, developer_connect.User) for i in results) @@ -9933,6 +9961,8 @@ async def test_list_users_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11886,6 +11916,9 @@ def test_list_connections_rest_pager(transport: str = "rest"): pager = client.list_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, developer_connect.Connection) for i in results) @@ -13406,6 +13439,9 @@ def test_list_git_repository_links_rest_pager(transport: str = "rest"): pager = client.list_git_repository_links(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, developer_connect.GitRepositoryLink) for i in results) @@ -14234,6 +14270,9 @@ def test_fetch_linkable_git_repositories_rest_pager(transport: str = "rest"): pager = client.fetch_linkable_git_repositories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -14696,6 +14735,9 @@ def test_fetch_git_refs_rest_pager(transport: str = "rest"): pager = client.fetch_git_refs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -14963,6 +15005,9 @@ def test_list_account_connectors_rest_pager(transport: str = "rest"): pager = client.list_account_connectors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, developer_connect.AccountConnector) for i in results) @@ -16244,6 +16289,9 @@ def test_list_users_rest_pager(transport: str = "rest"): pager = client.list_users(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, developer_connect.User) for i in results) diff --git a/packages/google-cloud-developerconnect/tests/unit/gapic/developerconnect_v1/test_insights_config_service.py b/packages/google-cloud-developerconnect/tests/unit/gapic/developerconnect_v1/test_insights_config_service.py index c267f432833b..3f3b11da8c9c 100644 --- a/packages/google-cloud-developerconnect/tests/unit/gapic/developerconnect_v1/test_insights_config_service.py +++ b/packages/google-cloud-developerconnect/tests/unit/gapic/developerconnect_v1/test_insights_config_service.py @@ -1804,6 +1804,9 @@ def test_list_insights_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, insights_config.InsightsConfig) for i in results) @@ -1896,6 +1899,8 @@ async def test_list_insights_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4047,6 +4052,9 @@ def test_list_deployment_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, insights_config.DeploymentEvent) for i in results) @@ -4139,6 +4147,8 @@ async def test_list_deployment_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4450,6 +4460,9 @@ def test_list_insights_configs_rest_pager(transport: str = "rest"): pager = client.list_insights_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, insights_config.InsightsConfig) for i in results) @@ -5650,6 +5663,9 @@ def test_list_deployment_events_rest_pager(transport: str = "rest"): pager = client.list_deployment_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, insights_config.DeploymentEvent) for i in results) diff --git a/packages/google-cloud-devicestreaming/noxfile.py b/packages/google-cloud-devicestreaming/noxfile.py index 35e6971161be..9ec5dfb08d91 100644 --- a/packages/google-cloud-devicestreaming/noxfile.py +++ b/packages/google-cloud-devicestreaming/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-devicestreaming/testing/constraints-3.15.txt b/packages/google-cloud-devicestreaming/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-devicestreaming/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-devicestreaming/tests/unit/gapic/devicestreaming_v1/test_direct_access_service.py b/packages/google-cloud-devicestreaming/tests/unit/gapic/devicestreaming_v1/test_direct_access_service.py index c043c7186e0d..b3aaeee42157 100644 --- a/packages/google-cloud-devicestreaming/tests/unit/gapic/devicestreaming_v1/test_direct_access_service.py +++ b/packages/google-cloud-devicestreaming/tests/unit/gapic/devicestreaming_v1/test_direct_access_service.py @@ -2160,6 +2160,9 @@ def test_list_device_sessions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.DeviceSession) for i in results) @@ -2252,6 +2255,8 @@ async def test_list_device_sessions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3861,6 +3866,9 @@ def test_list_device_sessions_rest_pager(transport: str = "rest"): pager = client.list_device_sessions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.DeviceSession) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/noxfile.py b/packages/google-cloud-dialogflow-cx/noxfile.py index 805659bdd66f..ec8f4695b12b 100644 --- a/packages/google-cloud-dialogflow-cx/noxfile.py +++ b/packages/google-cloud-dialogflow-cx/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-dialogflow-cx/testing/constraints-3.15.txt b/packages/google-cloud-dialogflow-cx/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-dialogflow-cx/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_agents.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_agents.py index 59189c1538a1..3b8dc886a9c3 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_agents.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_agents.py @@ -1652,6 +1652,9 @@ def test_list_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) @@ -1740,6 +1743,8 @@ async def test_list_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5293,6 +5298,9 @@ def test_list_agents_rest_pager(transport: str = "rest"): pager = client.list_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_changelogs.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_changelogs.py index abdde626eae6..f6990a7c9498 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_changelogs.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_changelogs.py @@ -1664,6 +1664,9 @@ def test_list_changelogs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, changelog.Changelog) for i in results) @@ -1752,6 +1755,8 @@ async def test_list_changelogs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2396,6 +2401,9 @@ def test_list_changelogs_rest_pager(transport: str = "rest"): pager = client.list_changelogs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, changelog.Changelog) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_deployments.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_deployments.py index fa711d950569..defdf77b1742 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_deployments.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_deployments.py @@ -1668,6 +1668,9 @@ def test_list_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployment.Deployment) for i in results) @@ -1756,6 +1759,8 @@ async def test_list_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2394,6 +2399,9 @@ def test_list_deployments_rest_pager(transport: str = "rest"): pager = client.list_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployment.Deployment) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_entity_types.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_entity_types.py index f22ea524469d..a5da8a36a2cb 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_entity_types.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_entity_types.py @@ -3131,6 +3131,9 @@ def test_list_entity_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entity_type.EntityType) for i in results) @@ -3223,6 +3226,8 @@ async def test_list_entity_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4814,6 +4819,9 @@ def test_list_entity_types_rest_pager(transport: str = "rest"): pager = client.list_entity_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entity_type.EntityType) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_environments.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_environments.py index f3ef0978756e..a5dc37fb4926 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_environments.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_environments.py @@ -1707,6 +1707,9 @@ def test_list_environments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -1799,6 +1802,8 @@ async def test_list_environments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3624,6 +3629,9 @@ def test_lookup_environment_history_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -3716,6 +3724,8 @@ async def test_lookup_environment_history_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4431,6 +4441,9 @@ def test_list_continuous_test_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.ContinuousTestResult) for i in results) @@ -4523,6 +4536,8 @@ async def test_list_continuous_test_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5077,6 +5092,9 @@ def test_list_environments_rest_pager(transport: str = "rest"): pager = client.list_environments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -6086,6 +6104,9 @@ def test_lookup_environment_history_rest_pager(transport: str = "rest"): pager = client.lookup_environment_history(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -6479,6 +6500,9 @@ def test_list_continuous_test_results_rest_pager(transport: str = "rest"): pager = client.list_continuous_test_results(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.ContinuousTestResult) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_examples.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_examples.py index 4a5e8019f14d..7372fc7dfb2e 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_examples.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_examples.py @@ -2316,6 +2316,9 @@ def test_list_examples_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, example.Example) for i in results) @@ -2404,6 +2407,8 @@ async def test_list_examples_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3760,6 +3765,9 @@ def test_list_examples_rest_pager(transport: str = "rest"): pager = client.list_examples(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, example.Example) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_experiments.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_experiments.py index 6428ad864aa7..5874a0827262 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_experiments.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_experiments.py @@ -1671,6 +1671,9 @@ def test_list_experiments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, experiment.Experiment) for i in results) @@ -1759,6 +1762,8 @@ async def test_list_experiments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4143,6 +4148,9 @@ def test_list_experiments_rest_pager(transport: str = "rest"): pager = client.list_experiments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, experiment.Experiment) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_flows.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_flows.py index 01ac04da7cd0..c808c9e34de8 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_flows.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_flows.py @@ -2310,6 +2310,9 @@ def test_list_flows_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, flow.Flow) for i in results) @@ -2398,6 +2401,8 @@ async def test_list_flows_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5155,6 +5160,9 @@ def test_list_flows_rest_pager(transport: str = "rest"): pager = client.list_flows(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, flow.Flow) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_generators.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_generators.py index 4f5f1ef3795a..d9f4ebbb5e36 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_generators.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_generators.py @@ -1665,6 +1665,9 @@ def test_list_generators_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, generator.Generator) for i in results) @@ -1753,6 +1756,8 @@ async def test_list_generators_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3375,6 +3380,9 @@ def test_list_generators_rest_pager(transport: str = "rest"): pager = client.list_generators(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, generator.Generator) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_intents.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_intents.py index 5250d6d4a28a..6eee9a2b8bed 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_intents.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_intents.py @@ -1641,6 +1641,9 @@ def test_list_intents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intent.Intent) for i in results) @@ -1729,6 +1732,8 @@ async def test_list_intents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3879,6 +3884,9 @@ def test_list_intents_rest_pager(transport: str = "rest"): pager = client.list_intents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intent.Intent) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_pages.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_pages.py index 51594d014308..442c0f33c8dc 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_pages.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_pages.py @@ -1640,6 +1640,9 @@ def test_list_pages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, page.Page) for i in results) @@ -1728,6 +1731,8 @@ async def test_list_pages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3360,6 +3365,9 @@ def test_list_pages_rest_pager(transport: str = "rest"): pager = client.list_pages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, page.Page) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_playbooks.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_playbooks.py index d37ab88050b1..35c6dcff7c58 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_playbooks.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_playbooks.py @@ -2357,6 +2357,9 @@ def test_list_playbooks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, playbook.Playbook) for i in results) @@ -2445,6 +2448,8 @@ async def test_list_playbooks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5152,6 +5157,9 @@ def test_list_playbook_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, playbook.PlaybookVersion) for i in results) @@ -5244,6 +5252,8 @@ async def test_list_playbook_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6241,6 +6251,9 @@ def test_list_playbooks_rest_pager(transport: str = "rest"): pager = client.list_playbooks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, playbook.Playbook) for i in results) @@ -7676,6 +7689,9 @@ def test_list_playbook_versions_rest_pager(transport: str = "rest"): pager = client.list_playbook_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, playbook.PlaybookVersion) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_security_settings_service.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_security_settings_service.py index 8644fcd74b45..845e85539460 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_security_settings_service.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_security_settings_service.py @@ -2998,6 +2998,9 @@ def test_list_security_settings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, security_settings.SecuritySettings) for i in results) @@ -3090,6 +3093,8 @@ async def test_list_security_settings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4314,6 +4319,9 @@ def test_list_security_settings_rest_pager(transport: str = "rest"): pager = client.list_security_settings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, security_settings.SecuritySettings) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_session_entity_types.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_session_entity_types.py index 1dac62e2c33d..9f797910efae 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_session_entity_types.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_session_entity_types.py @@ -1774,6 +1774,9 @@ def test_list_session_entity_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1868,6 +1871,8 @@ async def test_list_session_entity_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3616,6 +3621,9 @@ def test_list_session_entity_types_rest_pager(transport: str = "rest"): pager = client.list_session_entity_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_test_cases.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_test_cases.py index b55f917f25b6..c124c8809d9a 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_test_cases.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_test_cases.py @@ -1682,6 +1682,9 @@ def test_list_test_cases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, test_case.TestCase) for i in results) @@ -1770,6 +1773,8 @@ async def test_list_test_cases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4870,6 +4875,9 @@ def test_list_test_case_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, test_case.TestCaseResult) for i in results) @@ -4962,6 +4970,8 @@ async def test_list_test_case_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5616,6 +5626,9 @@ def test_list_test_cases_rest_pager(transport: str = "rest"): pager = client.list_test_cases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, test_case.TestCase) for i in results) @@ -7275,6 +7288,9 @@ def test_list_test_case_results_rest_pager(transport: str = "rest"): pager = client.list_test_case_results(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, test_case.TestCaseResult) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_tools.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_tools.py index 3d48c0606ef6..c7c323215ad4 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_tools.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_tools.py @@ -1972,6 +1972,9 @@ def test_list_tools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.Tool) for i in results) @@ -2060,6 +2063,8 @@ async def test_list_tools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3488,6 +3493,9 @@ def test_list_tool_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.ToolVersion) for i in results) @@ -3580,6 +3588,8 @@ async def test_list_tool_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5411,6 +5421,9 @@ def test_list_tools_rest_pager(transport: str = "rest"): pager = client.list_tools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.Tool) for i in results) @@ -6206,6 +6219,9 @@ def test_list_tool_versions_rest_pager(transport: str = "rest"): pager = client.list_tool_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.ToolVersion) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_transition_route_groups.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_transition_route_groups.py index fe4f74236698..6130e96ae6d7 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_transition_route_groups.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_transition_route_groups.py @@ -1806,6 +1806,9 @@ def test_list_transition_route_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1900,6 +1903,8 @@ async def test_list_transition_route_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3643,6 +3648,9 @@ def test_list_transition_route_groups_rest_pager(transport: str = "rest"): pager = client.list_transition_route_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_versions.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_versions.py index 144b93a91ba7..366a778e865d 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_versions.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_versions.py @@ -1653,6 +1653,9 @@ def test_list_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) @@ -1741,6 +1744,8 @@ async def test_list_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4027,6 +4032,9 @@ def test_list_versions_rest_pager(transport: str = "rest"): pager = client.list_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_webhooks.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_webhooks.py index 66cb11ca0578..4f5f3a4903e5 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_webhooks.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3/test_webhooks.py @@ -1647,6 +1647,9 @@ def test_list_webhooks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, webhook.Webhook) for i in results) @@ -1735,6 +1738,8 @@ async def test_list_webhooks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3351,6 +3356,9 @@ def test_list_webhooks_rest_pager(transport: str = "rest"): pager = client.list_webhooks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, webhook.Webhook) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_agents.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_agents.py index 705e8b6d87db..0528033b1076 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_agents.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_agents.py @@ -1653,6 +1653,9 @@ def test_list_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) @@ -1741,6 +1744,8 @@ async def test_list_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5295,6 +5300,9 @@ def test_list_agents_rest_pager(transport: str = "rest"): pager = client.list_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_changelogs.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_changelogs.py index 17ddab1cb253..ae72b1c59f28 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_changelogs.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_changelogs.py @@ -1664,6 +1664,9 @@ def test_list_changelogs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, changelog.Changelog) for i in results) @@ -1752,6 +1755,8 @@ async def test_list_changelogs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2396,6 +2401,9 @@ def test_list_changelogs_rest_pager(transport: str = "rest"): pager = client.list_changelogs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, changelog.Changelog) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_conversation_history.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_conversation_history.py index cd549e2bee90..529e685b5463 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_conversation_history.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_conversation_history.py @@ -1793,6 +1793,9 @@ def test_list_conversations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation_history.Conversation) for i in results) @@ -1885,6 +1888,8 @@ async def test_list_conversations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2859,6 +2864,9 @@ def test_list_conversations_rest_pager(transport: str = "rest"): pager = client.list_conversations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation_history.Conversation) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_deployments.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_deployments.py index f8ec1d518ef4..f0dab19edeb4 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_deployments.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_deployments.py @@ -1668,6 +1668,9 @@ def test_list_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployment.Deployment) for i in results) @@ -1756,6 +1759,8 @@ async def test_list_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2394,6 +2399,9 @@ def test_list_deployments_rest_pager(transport: str = "rest"): pager = client.list_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployment.Deployment) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_entity_types.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_entity_types.py index 8fc9bc1c4bcb..b12701d9c6db 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_entity_types.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_entity_types.py @@ -3131,6 +3131,9 @@ def test_list_entity_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entity_type.EntityType) for i in results) @@ -3223,6 +3226,8 @@ async def test_list_entity_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4814,6 +4819,9 @@ def test_list_entity_types_rest_pager(transport: str = "rest"): pager = client.list_entity_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entity_type.EntityType) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_environments.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_environments.py index cc5877519508..230c32d95c5c 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_environments.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_environments.py @@ -1707,6 +1707,9 @@ def test_list_environments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -1799,6 +1802,8 @@ async def test_list_environments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3624,6 +3629,9 @@ def test_lookup_environment_history_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -3716,6 +3724,8 @@ async def test_lookup_environment_history_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4431,6 +4441,9 @@ def test_list_continuous_test_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.ContinuousTestResult) for i in results) @@ -4523,6 +4536,8 @@ async def test_list_continuous_test_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5077,6 +5092,9 @@ def test_list_environments_rest_pager(transport: str = "rest"): pager = client.list_environments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -6086,6 +6104,9 @@ def test_lookup_environment_history_rest_pager(transport: str = "rest"): pager = client.lookup_environment_history(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -6479,6 +6500,9 @@ def test_list_continuous_test_results_rest_pager(transport: str = "rest"): pager = client.list_continuous_test_results(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.ContinuousTestResult) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_examples.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_examples.py index 9aab6a8028c0..63953dc1b453 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_examples.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_examples.py @@ -2320,6 +2320,9 @@ def test_list_examples_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, example.Example) for i in results) @@ -2408,6 +2411,8 @@ async def test_list_examples_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3764,6 +3769,9 @@ def test_list_examples_rest_pager(transport: str = "rest"): pager = client.list_examples(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, example.Example) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_experiments.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_experiments.py index 4fdc6e6e85e2..4dbaa113c1b3 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_experiments.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_experiments.py @@ -1671,6 +1671,9 @@ def test_list_experiments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, experiment.Experiment) for i in results) @@ -1759,6 +1762,8 @@ async def test_list_experiments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4143,6 +4148,9 @@ def test_list_experiments_rest_pager(transport: str = "rest"): pager = client.list_experiments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, experiment.Experiment) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_flows.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_flows.py index 1c00d5d427ba..8ddb7663943a 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_flows.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_flows.py @@ -2310,6 +2310,9 @@ def test_list_flows_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, flow.Flow) for i in results) @@ -2398,6 +2401,8 @@ async def test_list_flows_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5155,6 +5160,9 @@ def test_list_flows_rest_pager(transport: str = "rest"): pager = client.list_flows(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, flow.Flow) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_generators.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_generators.py index f8c9ff733832..fb152d3044ce 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_generators.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_generators.py @@ -1665,6 +1665,9 @@ def test_list_generators_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, generator.Generator) for i in results) @@ -1753,6 +1756,8 @@ async def test_list_generators_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3375,6 +3380,9 @@ def test_list_generators_rest_pager(transport: str = "rest"): pager = client.list_generators(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, generator.Generator) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_intents.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_intents.py index 40e1c21ec234..ff75c8e57bde 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_intents.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_intents.py @@ -1641,6 +1641,9 @@ def test_list_intents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intent.Intent) for i in results) @@ -1729,6 +1732,8 @@ async def test_list_intents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3879,6 +3884,9 @@ def test_list_intents_rest_pager(transport: str = "rest"): pager = client.list_intents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intent.Intent) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_pages.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_pages.py index c4350c0ab602..e2f4d6ccd899 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_pages.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_pages.py @@ -1640,6 +1640,9 @@ def test_list_pages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, page.Page) for i in results) @@ -1728,6 +1731,8 @@ async def test_list_pages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3360,6 +3365,9 @@ def test_list_pages_rest_pager(transport: str = "rest"): pager = client.list_pages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, page.Page) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_playbooks.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_playbooks.py index 229d22499bba..37d151de9670 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_playbooks.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_playbooks.py @@ -2358,6 +2358,9 @@ def test_list_playbooks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, playbook.Playbook) for i in results) @@ -2446,6 +2449,8 @@ async def test_list_playbooks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5153,6 +5158,9 @@ def test_list_playbook_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, playbook.PlaybookVersion) for i in results) @@ -5245,6 +5253,8 @@ async def test_list_playbook_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6242,6 +6252,9 @@ def test_list_playbooks_rest_pager(transport: str = "rest"): pager = client.list_playbooks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, playbook.Playbook) for i in results) @@ -7677,6 +7690,9 @@ def test_list_playbook_versions_rest_pager(transport: str = "rest"): pager = client.list_playbook_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, playbook.PlaybookVersion) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_security_settings_service.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_security_settings_service.py index b33f7efb1909..105073f47187 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_security_settings_service.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_security_settings_service.py @@ -2998,6 +2998,9 @@ def test_list_security_settings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, security_settings.SecuritySettings) for i in results) @@ -3090,6 +3093,8 @@ async def test_list_security_settings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4314,6 +4319,9 @@ def test_list_security_settings_rest_pager(transport: str = "rest"): pager = client.list_security_settings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, security_settings.SecuritySettings) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_session_entity_types.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_session_entity_types.py index 1ca5ecf89069..4c62b74d1cef 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_session_entity_types.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_session_entity_types.py @@ -1774,6 +1774,9 @@ def test_list_session_entity_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1868,6 +1871,8 @@ async def test_list_session_entity_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3616,6 +3621,9 @@ def test_list_session_entity_types_rest_pager(transport: str = "rest"): pager = client.list_session_entity_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_test_cases.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_test_cases.py index 0bd5a2a0c768..98f392764ada 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_test_cases.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_test_cases.py @@ -1682,6 +1682,9 @@ def test_list_test_cases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, test_case.TestCase) for i in results) @@ -1770,6 +1773,8 @@ async def test_list_test_cases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4870,6 +4875,9 @@ def test_list_test_case_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, test_case.TestCaseResult) for i in results) @@ -4962,6 +4970,8 @@ async def test_list_test_case_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5616,6 +5626,9 @@ def test_list_test_cases_rest_pager(transport: str = "rest"): pager = client.list_test_cases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, test_case.TestCase) for i in results) @@ -7275,6 +7288,9 @@ def test_list_test_case_results_rest_pager(transport: str = "rest"): pager = client.list_test_case_results(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, test_case.TestCaseResult) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_tools.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_tools.py index aafebcb2ad7a..64f84e8ad029 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_tools.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_tools.py @@ -1976,6 +1976,9 @@ def test_list_tools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.Tool) for i in results) @@ -2064,6 +2067,8 @@ async def test_list_tools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3740,6 +3745,9 @@ def test_list_tool_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.ToolVersion) for i in results) @@ -3832,6 +3840,8 @@ async def test_list_tool_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5663,6 +5673,9 @@ def test_list_tools_rest_pager(transport: str = "rest"): pager = client.list_tools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.Tool) for i in results) @@ -6590,6 +6603,9 @@ def test_list_tool_versions_rest_pager(transport: str = "rest"): pager = client.list_tool_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.ToolVersion) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_transition_route_groups.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_transition_route_groups.py index 0a86e9e42857..01783a605a15 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_transition_route_groups.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_transition_route_groups.py @@ -1806,6 +1806,9 @@ def test_list_transition_route_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1900,6 +1903,8 @@ async def test_list_transition_route_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3643,6 +3648,9 @@ def test_list_transition_route_groups_rest_pager(transport: str = "rest"): pager = client.list_transition_route_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_versions.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_versions.py index 3911f1848d9d..e44cbb7e697d 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_versions.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_versions.py @@ -1653,6 +1653,9 @@ def test_list_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) @@ -1741,6 +1744,8 @@ async def test_list_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4027,6 +4032,9 @@ def test_list_versions_rest_pager(transport: str = "rest"): pager = client.list_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) diff --git a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_webhooks.py b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_webhooks.py index 31cb694cfdd5..fe8c98ffcb88 100644 --- a/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_webhooks.py +++ b/packages/google-cloud-dialogflow-cx/tests/unit/gapic/dialogflowcx_v3beta1/test_webhooks.py @@ -1647,6 +1647,9 @@ def test_list_webhooks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, webhook.Webhook) for i in results) @@ -1735,6 +1738,8 @@ async def test_list_webhooks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3351,6 +3356,9 @@ def test_list_webhooks_rest_pager(transport: str = "rest"): pager = client.list_webhooks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, webhook.Webhook) for i in results) diff --git a/packages/google-cloud-dialogflow/noxfile.py b/packages/google-cloud-dialogflow/noxfile.py index 16dd69716f10..98ea14c05925 100644 --- a/packages/google-cloud-dialogflow/noxfile.py +++ b/packages/google-cloud-dialogflow/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-dialogflow/testing/constraints-3.15.txt b/packages/google-cloud-dialogflow/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-dialogflow/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_agents.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_agents.py index 243b2f1a9ac3..82a8c2685fba 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_agents.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_agents.py @@ -2680,6 +2680,9 @@ def test_search_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) @@ -2768,6 +2771,8 @@ async def test_search_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4986,6 +4991,9 @@ def test_search_agents_rest_pager(transport: str = "rest"): pager = client.search_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_answer_records.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_answer_records.py index 2dc67c97b6be..6b72f41de80f 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_answer_records.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_answer_records.py @@ -1734,6 +1734,9 @@ def test_list_answer_records_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, answer_record.AnswerRecord) for i in results) @@ -1826,6 +1829,8 @@ async def test_list_answer_records_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2482,6 +2487,9 @@ def test_list_answer_records_rest_pager(transport: str = "rest"): pager = client.list_answer_records(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, answer_record.AnswerRecord) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_contexts.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_contexts.py index de3115aa9c1b..6c3a11efaa99 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_contexts.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_contexts.py @@ -1647,6 +1647,9 @@ def test_list_contexts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, context.Context) for i in results) @@ -1735,6 +1738,8 @@ async def test_list_contexts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3661,6 +3666,9 @@ def test_list_contexts_rest_pager(transport: str = "rest"): pager = client.list_contexts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, context.Context) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversation_datasets.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversation_datasets.py index 540991ab15b8..76712f2a536e 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversation_datasets.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversation_datasets.py @@ -2529,6 +2529,9 @@ def test_list_conversation_datasets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2623,6 +2626,8 @@ async def test_list_conversation_datasets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3927,6 +3932,9 @@ def test_list_conversation_datasets_rest_pager(transport: str = "rest"): pager = client.list_conversation_datasets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversation_models.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversation_models.py index 50ba64bb7bdd..cf06d593a7ac 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversation_models.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversation_models.py @@ -2511,6 +2511,9 @@ def test_list_conversation_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation_model.ConversationModel) for i in results) @@ -2603,6 +2606,8 @@ async def test_list_conversation_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4294,6 +4299,9 @@ def test_list_conversation_model_evaluations_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4389,6 +4397,8 @@ async def test_list_conversation_model_evaluations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5437,6 +5447,9 @@ def test_list_conversation_models_rest_pager(transport: str = "rest"): pager = client.list_conversation_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation_model.ConversationModel) for i in results) @@ -6335,6 +6348,9 @@ def test_list_conversation_model_evaluations_rest_pager(transport: str = "rest") pager = client.list_conversation_model_evaluations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversation_profiles.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversation_profiles.py index 84ce6f6f8f40..be0ef3dded1b 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversation_profiles.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversation_profiles.py @@ -1803,6 +1803,9 @@ def test_list_conversation_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1897,6 +1900,8 @@ async def test_list_conversation_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4420,6 +4425,9 @@ def test_list_conversation_profiles_rest_pager(transport: str = "rest"): pager = client.list_conversation_profiles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversations.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversations.py index 92a163cf1646..b86063947c50 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversations.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_conversations.py @@ -2116,6 +2116,9 @@ def test_list_conversations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -2208,6 +2211,8 @@ async def test_list_conversations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3752,6 +3757,9 @@ def test_list_messages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, participant.Message) for i in results) @@ -3840,6 +3848,8 @@ async def test_list_messages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5806,6 +5816,9 @@ def test_list_conversations_rest_pager(transport: str = "rest"): pager = client.list_conversations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -6637,6 +6650,9 @@ def test_list_messages_rest_pager(transport: str = "rest"): pager = client.list_messages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, participant.Message) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_documents.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_documents.py index a637f582dac7..7dc4caacca61 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_documents.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_documents.py @@ -1669,6 +1669,9 @@ def test_list_documents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document.Document) for i in results) @@ -1757,6 +1760,8 @@ async def test_list_documents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4228,6 +4233,9 @@ def test_list_documents_rest_pager(transport: str = "rest"): pager = client.list_documents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document.Document) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_entity_types.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_entity_types.py index 5751ade4a20d..559dca38af81 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_entity_types.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_entity_types.py @@ -1703,6 +1703,9 @@ def test_list_entity_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entity_type.EntityType) for i in results) @@ -1795,6 +1798,8 @@ async def test_list_entity_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5289,6 +5294,9 @@ def test_list_entity_types_rest_pager(transport: str = "rest"): pager = client.list_entity_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entity_type.EntityType) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_environments.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_environments.py index 77616e2d64c8..ec7abd818b97 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_environments.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_environments.py @@ -1700,6 +1700,9 @@ def test_list_environments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -1792,6 +1795,8 @@ async def test_list_environments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3197,6 +3202,9 @@ def test_get_environment_history_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.EnvironmentHistory.Entry) for i in results) @@ -3289,6 +3297,8 @@ async def test_get_environment_history_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3594,6 +3604,9 @@ def test_list_environments_rest_pager(transport: str = "rest"): pager = client.list_environments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -4325,6 +4338,9 @@ def test_get_environment_history_rest_pager(transport: str = "rest"): pager = client.get_environment_history(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.EnvironmentHistory.Entry) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_generator_evaluations.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_generator_evaluations.py index 34f5193451c2..413066dd1135 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_generator_evaluations.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_generator_evaluations.py @@ -2533,6 +2533,9 @@ def test_list_generator_evaluations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2627,6 +2630,8 @@ async def test_list_generator_evaluations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3662,6 +3667,9 @@ def test_list_generator_evaluations_rest_pager(transport: str = "rest"): pager = client.list_generator_evaluations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_generators.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_generators.py index 16f56aa5c772..be3d5cba1703 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_generators.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_generators.py @@ -2367,6 +2367,9 @@ def test_list_generators_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, generator.Generator) for i in results) @@ -2455,6 +2458,8 @@ async def test_list_generators_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3782,6 +3787,9 @@ def test_list_generators_rest_pager(transport: str = "rest"): pager = client.list_generators(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, generator.Generator) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_intents.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_intents.py index 81932926eb14..ffd0c314a28a 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_intents.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_intents.py @@ -1653,6 +1653,9 @@ def test_list_intents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intent.Intent) for i in results) @@ -1741,6 +1744,8 @@ async def test_list_intents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4289,6 +4294,9 @@ def test_list_intents_rest_pager(transport: str = "rest"): pager = client.list_intents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intent.Intent) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_knowledge_bases.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_knowledge_bases.py index 075bf2fc57c8..779669e60d1a 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_knowledge_bases.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_knowledge_bases.py @@ -1729,6 +1729,9 @@ def test_list_knowledge_bases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, knowledge_base.KnowledgeBase) for i in results) @@ -1821,6 +1824,8 @@ async def test_list_knowledge_bases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3532,6 +3537,9 @@ def test_list_knowledge_bases_rest_pager(transport: str = "rest"): pager = client.list_knowledge_bases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, knowledge_base.KnowledgeBase) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_participants.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_participants.py index 216525b1e69f..36d972b0555b 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_participants.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_participants.py @@ -2430,6 +2430,9 @@ def test_list_participants_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, participant.Participant) for i in results) @@ -2522,6 +2525,8 @@ async def test_list_participants_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5391,6 +5396,9 @@ def test_list_participants_rest_pager(transport: str = "rest"): pager = client.list_participants(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, participant.Participant) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_session_entity_types.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_session_entity_types.py index 3f9cde6fe556..9c3a7d9ecab1 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_session_entity_types.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_session_entity_types.py @@ -1774,6 +1774,9 @@ def test_list_session_entity_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1868,6 +1871,8 @@ async def test_list_session_entity_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3612,6 +3617,9 @@ def test_list_session_entity_types_rest_pager(transport: str = "rest"): pager = client.list_session_entity_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_sip_trunks.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_sip_trunks.py index 0d3f9e7043c5..88fcfde16a8b 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_sip_trunks.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_sip_trunks.py @@ -2320,6 +2320,9 @@ def test_list_sip_trunks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sip_trunk.SipTrunk) for i in results) @@ -2408,6 +2411,8 @@ async def test_list_sip_trunks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3739,6 +3744,9 @@ def test_list_sip_trunks_rest_pager(transport: str = "rest"): pager = client.list_sip_trunks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sip_trunk.SipTrunk) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_tools.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_tools.py index 51379b9c9b47..98d740c9988e 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_tools.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_tools.py @@ -2330,6 +2330,9 @@ def test_list_tools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.Tool) for i in results) @@ -2418,6 +2421,8 @@ async def test_list_tools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3736,6 +3741,9 @@ def test_list_tools_rest_pager(transport: str = "rest"): pager = client.list_tools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.Tool) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_versions.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_versions.py index 458355e19462..c4ca422df48f 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_versions.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2/test_versions.py @@ -1647,6 +1647,9 @@ def test_list_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) @@ -1735,6 +1738,8 @@ async def test_list_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3353,6 +3358,9 @@ def test_list_versions_rest_pager(transport: str = "rest"): pager = client.list_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_agents.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_agents.py index 8e68923779cc..39700f876179 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_agents.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_agents.py @@ -2680,6 +2680,9 @@ def test_search_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) @@ -2768,6 +2771,8 @@ async def test_search_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4988,6 +4993,9 @@ def test_search_agents_rest_pager(transport: str = "rest"): pager = client.search_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent.Agent) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_answer_records.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_answer_records.py index 102a56062557..492b24850ef3 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_answer_records.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_answer_records.py @@ -1988,6 +1988,9 @@ def test_list_answer_records_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, answer_record.AnswerRecord) for i in results) @@ -2080,6 +2083,8 @@ async def test_list_answer_records_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2674,6 +2679,9 @@ def test_list_answer_records_rest_pager(transport: str = "rest"): pager = client.list_answer_records(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, answer_record.AnswerRecord) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_contexts.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_contexts.py index 36b46ae6d834..ddad7f037bdc 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_contexts.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_contexts.py @@ -1647,6 +1647,9 @@ def test_list_contexts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, context.Context) for i in results) @@ -1735,6 +1738,8 @@ async def test_list_contexts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3661,6 +3666,9 @@ def test_list_contexts_rest_pager(transport: str = "rest"): pager = client.list_contexts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, context.Context) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_conversation_profiles.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_conversation_profiles.py index 3ede2db70088..24bfc90d2228 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_conversation_profiles.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_conversation_profiles.py @@ -1803,6 +1803,9 @@ def test_list_conversation_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1897,6 +1900,8 @@ async def test_list_conversation_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4437,6 +4442,9 @@ def test_list_conversation_profiles_rest_pager(transport: str = "rest"): pager = client.list_conversation_profiles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_conversations.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_conversations.py index c5ac9023248c..ae191d32304a 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_conversations.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_conversations.py @@ -2116,6 +2116,9 @@ def test_list_conversations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -2208,6 +2211,8 @@ async def test_list_conversations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4101,6 +4106,9 @@ def test_list_messages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, participant.Message) for i in results) @@ -4189,6 +4197,8 @@ async def test_list_messages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6157,6 +6167,9 @@ def test_list_conversations_rest_pager(transport: str = "rest"): pager = client.list_conversations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -7184,6 +7197,9 @@ def test_list_messages_rest_pager(transport: str = "rest"): pager = client.list_messages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, participant.Message) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_documents.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_documents.py index 1b6307675005..b010f923b37b 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_documents.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_documents.py @@ -1669,6 +1669,9 @@ def test_list_documents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document.Document) for i in results) @@ -1757,6 +1760,8 @@ async def test_list_documents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3980,6 +3985,9 @@ def test_list_documents_rest_pager(transport: str = "rest"): pager = client.list_documents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document.Document) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_entity_types.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_entity_types.py index e6c237b0b277..4de4aa94b636 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_entity_types.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_entity_types.py @@ -1703,6 +1703,9 @@ def test_list_entity_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entity_type.EntityType) for i in results) @@ -1795,6 +1798,8 @@ async def test_list_entity_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5299,6 +5304,9 @@ def test_list_entity_types_rest_pager(transport: str = "rest"): pager = client.list_entity_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entity_type.EntityType) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_environments.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_environments.py index e17ccccf5431..281eaf22ae90 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_environments.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_environments.py @@ -1700,6 +1700,9 @@ def test_list_environments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -1792,6 +1795,8 @@ async def test_list_environments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3197,6 +3202,9 @@ def test_get_environment_history_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.EnvironmentHistory.Entry) for i in results) @@ -3289,6 +3297,8 @@ async def test_get_environment_history_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3595,6 +3605,9 @@ def test_list_environments_rest_pager(transport: str = "rest"): pager = client.list_environments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -4326,6 +4339,9 @@ def test_get_environment_history_rest_pager(transport: str = "rest"): pager = client.get_environment_history(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.EnvironmentHistory.Entry) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_generator_evaluations.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_generator_evaluations.py index 5b2357794325..7a8b26c32f0c 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_generator_evaluations.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_generator_evaluations.py @@ -2533,6 +2533,9 @@ def test_list_generator_evaluations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2627,6 +2630,8 @@ async def test_list_generator_evaluations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3662,6 +3667,9 @@ def test_list_generator_evaluations_rest_pager(transport: str = "rest"): pager = client.list_generator_evaluations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_generators.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_generators.py index 01dff22d1b68..d919f48f100b 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_generators.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_generators.py @@ -2367,6 +2367,9 @@ def test_list_generators_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, generator.Generator) for i in results) @@ -2455,6 +2458,8 @@ async def test_list_generators_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3785,6 +3790,9 @@ def test_list_generators_rest_pager(transport: str = "rest"): pager = client.list_generators(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, generator.Generator) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_intents.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_intents.py index 00f178af9d0d..157086faa403 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_intents.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_intents.py @@ -1653,6 +1653,9 @@ def test_list_intents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intent.Intent) for i in results) @@ -1741,6 +1744,8 @@ async def test_list_intents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4302,6 +4307,9 @@ def test_list_intents_rest_pager(transport: str = "rest"): pager = client.list_intents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intent.Intent) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_knowledge_bases.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_knowledge_bases.py index f5732b93ab42..ed3a7a2f3d8a 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_knowledge_bases.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_knowledge_bases.py @@ -1729,6 +1729,9 @@ def test_list_knowledge_bases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, knowledge_base.KnowledgeBase) for i in results) @@ -1821,6 +1824,8 @@ async def test_list_knowledge_bases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3533,6 +3538,9 @@ def test_list_knowledge_bases_rest_pager(transport: str = "rest"): pager = client.list_knowledge_bases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, knowledge_base.KnowledgeBase) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_participants.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_participants.py index c9943bc2d655..4f724f78cfc1 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_participants.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_participants.py @@ -2424,6 +2424,9 @@ def test_list_participants_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, participant.Participant) for i in results) @@ -2516,6 +2519,8 @@ async def test_list_participants_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5210,6 +5215,9 @@ def test_list_suggestions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, participant.Suggestion) for i in results) @@ -5298,6 +5306,8 @@ async def test_list_suggestions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6235,6 +6245,9 @@ def test_list_participants_rest_pager(transport: str = "rest"): pager = client.list_participants(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, participant.Participant) for i in results) @@ -7422,6 +7435,9 @@ def test_list_suggestions_rest_pager(transport: str = "rest"): pager = client.list_suggestions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, participant.Suggestion) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_phone_numbers.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_phone_numbers.py index 71a2e5a418d1..fab0659d918c 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_phone_numbers.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_phone_numbers.py @@ -1703,6 +1703,9 @@ def test_list_phone_numbers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, phone_number.PhoneNumber) for i in results) @@ -1795,6 +1798,8 @@ async def test_list_phone_numbers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3177,6 +3182,9 @@ def test_list_phone_numbers_rest_pager(transport: str = "rest"): pager = client.list_phone_numbers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, phone_number.PhoneNumber) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_session_entity_types.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_session_entity_types.py index 2173a1fa23e0..6af9cde81e3a 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_session_entity_types.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_session_entity_types.py @@ -1774,6 +1774,9 @@ def test_list_session_entity_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1868,6 +1871,8 @@ async def test_list_session_entity_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3612,6 +3617,9 @@ def test_list_session_entity_types_rest_pager(transport: str = "rest"): pager = client.list_session_entity_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_sip_trunks.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_sip_trunks.py index 48de0b5b0da7..31a626f00894 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_sip_trunks.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_sip_trunks.py @@ -2320,6 +2320,9 @@ def test_list_sip_trunks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sip_trunk.SipTrunk) for i in results) @@ -2408,6 +2411,8 @@ async def test_list_sip_trunks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3742,6 +3747,9 @@ def test_list_sip_trunks_rest_pager(transport: str = "rest"): pager = client.list_sip_trunks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sip_trunk.SipTrunk) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_tools.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_tools.py index 604ebcca23d1..e20ae8a2684a 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_tools.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_tools.py @@ -2330,6 +2330,9 @@ def test_list_tools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.Tool) for i in results) @@ -2418,6 +2421,8 @@ async def test_list_tools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3736,6 +3741,9 @@ def test_list_tools_rest_pager(transport: str = "rest"): pager = client.list_tools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tool.Tool) for i in results) diff --git a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_versions.py b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_versions.py index 231199e77426..767fa3751921 100644 --- a/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_versions.py +++ b/packages/google-cloud-dialogflow/tests/unit/gapic/dialogflow_v2beta1/test_versions.py @@ -1647,6 +1647,9 @@ def test_list_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) @@ -1735,6 +1738,8 @@ async def test_list_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3354,6 +3359,9 @@ def test_list_versions_rest_pager(transport: str = "rest"): pager = client.list_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, version.Version) for i in results) diff --git a/packages/google-cloud-discoveryengine/noxfile.py b/packages/google-cloud-discoveryengine/noxfile.py index 762d1dda8f95..24b210634074 100644 --- a/packages/google-cloud-discoveryengine/noxfile.py +++ b/packages/google-cloud-discoveryengine/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-discoveryengine/testing/constraints-3.15.txt b/packages/google-cloud-discoveryengine/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-discoveryengine/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_control_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_control_service.py index 2147d34bf14c..fd214598f7c4 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_control_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_control_service.py @@ -3089,6 +3089,9 @@ def test_list_controls_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, control.Control) for i in results) @@ -3177,6 +3180,8 @@ async def test_list_controls_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4237,6 +4242,9 @@ def test_list_controls_rest_pager(transport: str = "rest"): pager = client.list_controls(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, control.Control) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_conversational_search_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_conversational_search_service.py index 23589adeb77b..5091571ce042 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_conversational_search_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_conversational_search_service.py @@ -3577,6 +3577,9 @@ def test_list_conversations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -3669,6 +3672,8 @@ async def test_list_conversations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6301,6 +6306,9 @@ def test_list_sessions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.Session) for i in results) @@ -6389,6 +6397,8 @@ async def test_list_sessions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7650,6 +7660,9 @@ def test_list_conversations_rest_pager(transport: str = "rest"): pager = client.list_conversations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -9098,6 +9111,9 @@ def test_list_sessions_rest_pager(transport: str = "rest"): pager = client.list_sessions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.Session) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_data_store_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_data_store_service.py index 8a4f5862ea82..29fdfdd5bee2 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_data_store_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_data_store_service.py @@ -2474,6 +2474,9 @@ def test_list_data_stores_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_store.DataStore) for i in results) @@ -2562,6 +2565,8 @@ async def test_list_data_stores_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3989,6 +3994,9 @@ def test_list_data_stores_rest_pager(transport: str = "rest"): pager = client.list_data_stores(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_store.DataStore) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_document_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_document_service.py index f0e703d9863d..b6b1496ff8d1 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_document_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_document_service.py @@ -2074,6 +2074,9 @@ def test_list_documents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document.Document) for i in results) @@ -2162,6 +2165,8 @@ async def test_list_documents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4593,6 +4598,9 @@ def test_list_documents_rest_pager(transport: str = "rest"): pager = client.list_documents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document.Document) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_engine_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_engine_service.py index 6b65acc9140a..322d026a5bb9 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_engine_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_engine_service.py @@ -3140,6 +3140,9 @@ def test_list_engines_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, engine.Engine) for i in results) @@ -3228,6 +3231,8 @@ async def test_list_engines_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4305,6 +4310,9 @@ def test_list_engines_rest_pager(transport: str = "rest"): pager = client.list_engines(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, engine.Engine) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_identity_mapping_store_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_identity_mapping_store_service.py index 440eb45137f1..47dfc495bf75 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_identity_mapping_store_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_identity_mapping_store_service.py @@ -3361,6 +3361,9 @@ def test_list_identity_mappings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3455,6 +3458,8 @@ async def test_list_identity_mappings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3921,6 +3926,9 @@ def test_list_identity_mapping_stores_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4015,6 +4023,8 @@ async def test_list_identity_mapping_stores_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5138,6 +5148,9 @@ def test_list_identity_mappings_rest_pager(transport: str = "rest"): pager = client.list_identity_mappings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5412,6 +5425,9 @@ def test_list_identity_mapping_stores_rest_pager(transport: str = "rest"): pager = client.list_identity_mapping_stores(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_schema_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_schema_service.py index f500b4a442a6..59d960c046c6 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_schema_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_schema_service.py @@ -2022,6 +2022,9 @@ def test_list_schemas_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, schema.Schema) for i in results) @@ -2110,6 +2113,8 @@ async def test_list_schemas_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3560,6 +3565,9 @@ def test_list_schemas_rest_pager(transport: str = "rest"): pager = client.list_schemas(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, schema.Schema) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_search_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_search_service.py index de2118f98d9e..b777c0d7bf1a 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_search_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_search_service.py @@ -1655,6 +1655,9 @@ def test_search_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1745,6 +1748,8 @@ async def test_search_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2135,6 +2140,9 @@ def test_search_lite_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2225,6 +2233,8 @@ async def test_search_lite_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2453,6 +2463,9 @@ def test_search_rest_pager(transport: str = "rest"): pager = client.search(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2637,6 +2650,9 @@ def test_search_lite_rest_pager(transport: str = "rest"): pager = client.search_lite(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_session_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_session_service.py index 349a2e3a759b..0325d2907fb5 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_session_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_session_service.py @@ -3062,6 +3062,9 @@ def test_list_sessions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.Session) for i in results) @@ -3150,6 +3153,8 @@ async def test_list_sessions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4193,6 +4198,9 @@ def test_list_sessions_rest_pager(transport: str = "rest"): pager = client.list_sessions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.Session) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_site_search_engine_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_site_search_engine_service.py index 8fb2c58349d9..a13c0f5cba5d 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_site_search_engine_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_site_search_engine_service.py @@ -3801,6 +3801,9 @@ def test_list_target_sites_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, site_search_engine.TargetSite) for i in results) @@ -3893,6 +3896,8 @@ async def test_list_target_sites_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6291,6 +6296,9 @@ def test_fetch_domain_verification_status_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, site_search_engine.TargetSite) for i in results) @@ -6383,6 +6391,8 @@ async def test_fetch_domain_verification_status_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7756,6 +7766,9 @@ def test_list_target_sites_rest_pager(transport: str = "rest"): pager = client.list_target_sites(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, site_search_engine.TargetSite) for i in results) @@ -9036,6 +9049,9 @@ def test_fetch_domain_verification_status_rest_pager(transport: str = "rest"): pager = client.fetch_domain_verification_status(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, site_search_engine.TargetSite) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_user_license_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_user_license_service.py index cdd062bd566b..5494483b502a 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_user_license_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1/test_user_license_service.py @@ -1770,6 +1770,9 @@ def test_list_user_licenses_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, user_license.UserLicense) for i in results) @@ -1862,6 +1865,8 @@ async def test_list_user_licenses_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2439,6 +2444,9 @@ def test_list_user_licenses_rest_pager(transport: str = "rest"): pager = client.list_user_licenses(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, user_license.UserLicense) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_chunk_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_chunk_service.py index 10e38103b35c..385c1b91faef 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_chunk_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_chunk_service.py @@ -2008,6 +2008,9 @@ def test_list_chunks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, chunk.Chunk) for i in results) @@ -2096,6 +2099,8 @@ async def test_list_chunks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2574,6 +2579,9 @@ def test_list_chunks_rest_pager(transport: str = "rest"): pager = client.list_chunks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, chunk.Chunk) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_control_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_control_service.py index 287e1940284a..6596d913c55e 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_control_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_control_service.py @@ -3089,6 +3089,9 @@ def test_list_controls_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, control.Control) for i in results) @@ -3177,6 +3180,8 @@ async def test_list_controls_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4237,6 +4242,9 @@ def test_list_controls_rest_pager(transport: str = "rest"): pager = client.list_controls(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, control.Control) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_conversational_search_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_conversational_search_service.py index 8e81ade1ec1f..dd977ac5b2a0 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_conversational_search_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_conversational_search_service.py @@ -3582,6 +3582,9 @@ def test_list_conversations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -3674,6 +3677,8 @@ async def test_list_conversations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6032,6 +6037,9 @@ def test_list_sessions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.Session) for i in results) @@ -6120,6 +6128,8 @@ async def test_list_sessions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7381,6 +7391,9 @@ def test_list_conversations_rest_pager(transport: str = "rest"): pager = client.list_conversations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -8691,6 +8704,9 @@ def test_list_sessions_rest_pager(transport: str = "rest"): pager = client.list_sessions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.Session) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_data_store_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_data_store_service.py index d6b100b4f097..12836aabf3c5 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_data_store_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_data_store_service.py @@ -2466,6 +2466,9 @@ def test_list_data_stores_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_store.DataStore) for i in results) @@ -2554,6 +2557,8 @@ async def test_list_data_stores_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4680,6 +4685,9 @@ def test_list_data_stores_rest_pager(transport: str = "rest"): pager = client.list_data_stores(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_store.DataStore) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_document_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_document_service.py index d182a9a2be6a..a1feaf303d7e 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_document_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_document_service.py @@ -2074,6 +2074,9 @@ def test_list_documents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document.Document) for i in results) @@ -2162,6 +2165,8 @@ async def test_list_documents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4939,6 +4944,9 @@ def test_list_documents_rest_pager(transport: str = "rest"): pager = client.list_documents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document.Document) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_engine_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_engine_service.py index 36b08e070e0e..c22205d85cf7 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_engine_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_engine_service.py @@ -3060,6 +3060,9 @@ def test_list_engines_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, engine.Engine) for i in results) @@ -3148,6 +3151,8 @@ async def test_list_engines_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5201,6 +5206,9 @@ def test_list_engines_rest_pager(transport: str = "rest"): pager = client.list_engines(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, engine.Engine) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_evaluation_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_evaluation_service.py index 65a8095d966e..69afb92cdf97 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_evaluation_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_evaluation_service.py @@ -2082,6 +2082,9 @@ def test_list_evaluations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.Evaluation) for i in results) @@ -2170,6 +2173,8 @@ async def test_list_evaluations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2975,6 +2980,9 @@ def test_list_evaluation_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3072,6 +3080,8 @@ async def test_list_evaluation_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3561,6 +3571,9 @@ def test_list_evaluations_rest_pager(transport: str = "rest"): pager = client.list_evaluations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.Evaluation) for i in results) @@ -4019,6 +4032,9 @@ def test_list_evaluation_results_rest_pager(transport: str = "rest"): pager = client.list_evaluation_results(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_sample_query_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_sample_query_service.py index 68a859454d68..289fb7b156d2 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_sample_query_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_sample_query_service.py @@ -2100,6 +2100,9 @@ def test_list_sample_queries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sample_query.SampleQuery) for i in results) @@ -2192,6 +2195,8 @@ async def test_list_sample_queries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4015,6 +4020,9 @@ def test_list_sample_queries_rest_pager(transport: str = "rest"): pager = client.list_sample_queries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sample_query.SampleQuery) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_sample_query_set_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_sample_query_set_service.py index dc610a9fd038..5076554f2392 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_sample_query_set_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_sample_query_set_service.py @@ -2147,6 +2147,9 @@ def test_list_sample_query_sets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sample_query_set.SampleQuerySet) for i in results) @@ -2239,6 +2242,8 @@ async def test_list_sample_query_sets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3802,6 +3807,9 @@ def test_list_sample_query_sets_rest_pager(transport: str = "rest"): pager = client.list_sample_query_sets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sample_query_set.SampleQuerySet) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_schema_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_schema_service.py index bd27f8de9ce5..ec0dbf980ed3 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_schema_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_schema_service.py @@ -2022,6 +2022,9 @@ def test_list_schemas_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, schema.Schema) for i in results) @@ -2110,6 +2113,8 @@ async def test_list_schemas_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3560,6 +3565,9 @@ def test_list_schemas_rest_pager(transport: str = "rest"): pager = client.list_schemas(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, schema.Schema) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_search_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_search_service.py index 2e4b4249d802..da303b64d105 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_search_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_search_service.py @@ -1653,6 +1653,9 @@ def test_search_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1743,6 +1746,8 @@ async def test_search_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -1971,6 +1976,9 @@ def test_search_rest_pager(transport: str = "rest"): pager = client.search(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_serving_config_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_serving_config_service.py index 142d7bdfdc83..5a35896af15b 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_serving_config_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_serving_config_service.py @@ -2613,6 +2613,9 @@ def test_list_serving_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, serving_config.ServingConfig) for i in results) @@ -2705,6 +2708,8 @@ async def test_list_serving_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3399,6 +3404,9 @@ def test_list_serving_configs_rest_pager(transport: str = "rest"): pager = client.list_serving_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, serving_config.ServingConfig) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_session_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_session_service.py index fde53908a370..285c58fa126b 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_session_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_session_service.py @@ -3049,6 +3049,9 @@ def test_list_sessions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.Session) for i in results) @@ -3137,6 +3140,8 @@ async def test_list_sessions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3565,6 +3570,9 @@ def test_list_files_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.FileMetadata) for i in results) @@ -3653,6 +3661,8 @@ async def test_list_files_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4696,6 +4706,9 @@ def test_list_sessions_rest_pager(transport: str = "rest"): pager = client.list_sessions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.Session) for i in results) @@ -4954,6 +4967,9 @@ def test_list_files_rest_pager(transport: str = "rest"): pager = client.list_files(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.FileMetadata) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_site_search_engine_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_site_search_engine_service.py index c1c80a648d64..97af42e09cee 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_site_search_engine_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1alpha/test_site_search_engine_service.py @@ -3802,6 +3802,9 @@ def test_list_target_sites_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, site_search_engine.TargetSite) for i in results) @@ -3894,6 +3897,8 @@ async def test_list_target_sites_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5306,6 +5311,9 @@ def test_fetch_domain_verification_status_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, site_search_engine.TargetSite) for i in results) @@ -5398,6 +5406,8 @@ async def test_fetch_domain_verification_status_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7295,6 +7305,9 @@ def test_list_target_sites_rest_pager(transport: str = "rest"): pager = client.list_target_sites(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, site_search_engine.TargetSite) for i in results) @@ -8022,6 +8035,9 @@ def test_fetch_domain_verification_status_rest_pager(transport: str = "rest"): pager = client.fetch_domain_verification_status(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, site_search_engine.TargetSite) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_assistant_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_assistant_service.py index 25938db40c5a..2c06d0ca82da 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_assistant_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_assistant_service.py @@ -3262,6 +3262,9 @@ def test_list_assistants_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assistant.Assistant) for i in results) @@ -3350,6 +3353,8 @@ async def test_list_assistants_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4466,6 +4471,9 @@ def test_list_assistants_rest_pager(transport: str = "rest"): pager = client.list_assistants(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, assistant.Assistant) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_control_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_control_service.py index 0121828c7700..bec395fc2458 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_control_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_control_service.py @@ -3093,6 +3093,9 @@ def test_list_controls_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, control.Control) for i in results) @@ -3181,6 +3184,8 @@ async def test_list_controls_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4241,6 +4246,9 @@ def test_list_controls_rest_pager(transport: str = "rest"): pager = client.list_controls(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, control.Control) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_conversational_search_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_conversational_search_service.py index fbc0067b23f5..5f478ae536a5 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_conversational_search_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_conversational_search_service.py @@ -3591,6 +3591,9 @@ def test_list_conversations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -3683,6 +3686,8 @@ async def test_list_conversations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6347,6 +6352,9 @@ def test_list_sessions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.Session) for i in results) @@ -6435,6 +6443,8 @@ async def test_list_sessions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7696,6 +7706,9 @@ def test_list_conversations_rest_pager(transport: str = "rest"): pager = client.list_conversations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -9146,6 +9159,9 @@ def test_list_sessions_rest_pager(transport: str = "rest"): pager = client.list_sessions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.Session) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_data_store_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_data_store_service.py index c620dcf8d7de..3ae9749335b8 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_data_store_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_data_store_service.py @@ -2492,6 +2492,9 @@ def test_list_data_stores_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_store.DataStore) for i in results) @@ -2580,6 +2583,8 @@ async def test_list_data_stores_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4024,6 +4029,9 @@ def test_list_data_stores_rest_pager(transport: str = "rest"): pager = client.list_data_stores(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_store.DataStore) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_document_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_document_service.py index b0aa7f01dc49..fe64dc58533a 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_document_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_document_service.py @@ -2078,6 +2078,9 @@ def test_list_documents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document.Document) for i in results) @@ -2166,6 +2169,8 @@ async def test_list_documents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4597,6 +4602,9 @@ def test_list_documents_rest_pager(transport: str = "rest"): pager = client.list_documents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document.Document) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_engine_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_engine_service.py index 9b0c6291ab3a..aa024e53023e 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_engine_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_engine_service.py @@ -3211,6 +3211,9 @@ def test_list_engines_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, engine.Engine) for i in results) @@ -3299,6 +3302,8 @@ async def test_list_engines_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6123,6 +6128,9 @@ def test_list_engines_rest_pager(transport: str = "rest"): pager = client.list_engines(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, engine.Engine) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_evaluation_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_evaluation_service.py index 888a814b60b7..9c2e4ae10503 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_evaluation_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_evaluation_service.py @@ -2088,6 +2088,9 @@ def test_list_evaluations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.Evaluation) for i in results) @@ -2176,6 +2179,8 @@ async def test_list_evaluations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2981,6 +2986,9 @@ def test_list_evaluation_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3078,6 +3086,8 @@ async def test_list_evaluation_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3567,6 +3577,9 @@ def test_list_evaluations_rest_pager(transport: str = "rest"): pager = client.list_evaluations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.Evaluation) for i in results) @@ -4025,6 +4038,9 @@ def test_list_evaluation_results_rest_pager(transport: str = "rest"): pager = client.list_evaluation_results(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_identity_mapping_store_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_identity_mapping_store_service.py index db1f98a90b07..2db7809d957b 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_identity_mapping_store_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_identity_mapping_store_service.py @@ -3365,6 +3365,9 @@ def test_list_identity_mappings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3459,6 +3462,8 @@ async def test_list_identity_mappings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3925,6 +3930,9 @@ def test_list_identity_mapping_stores_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4019,6 +4027,8 @@ async def test_list_identity_mapping_stores_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5142,6 +5152,9 @@ def test_list_identity_mappings_rest_pager(transport: str = "rest"): pager = client.list_identity_mappings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5416,6 +5429,9 @@ def test_list_identity_mapping_stores_rest_pager(transport: str = "rest"): pager = client.list_identity_mapping_stores(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_license_config_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_license_config_service.py index 5293fd90a07a..7df4db2de7a5 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_license_config_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_license_config_service.py @@ -2983,6 +2983,9 @@ def test_list_license_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, license_config.LicenseConfig) for i in results) @@ -3075,6 +3078,8 @@ async def test_list_license_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4711,6 +4716,9 @@ def test_list_license_configs_rest_pager(transport: str = "rest"): pager = client.list_license_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, license_config.LicenseConfig) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_sample_query_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_sample_query_service.py index d3a039fca3b2..473780f886d1 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_sample_query_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_sample_query_service.py @@ -2104,6 +2104,9 @@ def test_list_sample_queries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sample_query.SampleQuery) for i in results) @@ -2196,6 +2199,8 @@ async def test_list_sample_queries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4019,6 +4024,9 @@ def test_list_sample_queries_rest_pager(transport: str = "rest"): pager = client.list_sample_queries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sample_query.SampleQuery) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_sample_query_set_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_sample_query_set_service.py index 466e5fb6cb76..cb27060a84df 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_sample_query_set_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_sample_query_set_service.py @@ -2151,6 +2151,9 @@ def test_list_sample_query_sets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sample_query_set.SampleQuerySet) for i in results) @@ -2243,6 +2246,8 @@ async def test_list_sample_query_sets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3806,6 +3811,9 @@ def test_list_sample_query_sets_rest_pager(transport: str = "rest"): pager = client.list_sample_query_sets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sample_query_set.SampleQuerySet) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_schema_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_schema_service.py index 5afae39fb06c..4985faa7daf6 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_schema_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_schema_service.py @@ -2026,6 +2026,9 @@ def test_list_schemas_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, schema.Schema) for i in results) @@ -2114,6 +2117,8 @@ async def test_list_schemas_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3564,6 +3569,9 @@ def test_list_schemas_rest_pager(transport: str = "rest"): pager = client.list_schemas(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, schema.Schema) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_search_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_search_service.py index 556a8b9d08a2..41e3d8e2f6ca 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_search_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_search_service.py @@ -1673,6 +1673,9 @@ def test_search_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1763,6 +1766,8 @@ async def test_search_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2165,6 +2170,9 @@ def test_search_lite_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2255,6 +2263,8 @@ async def test_search_lite_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2483,6 +2493,9 @@ def test_search_rest_pager(transport: str = "rest"): pager = client.search(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2667,6 +2680,9 @@ def test_search_lite_rest_pager(transport: str = "rest"): pager = client.search_lite(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_serving_config_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_serving_config_service.py index 9dc547559342..0a87f7d56946 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_serving_config_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_serving_config_service.py @@ -3405,6 +3405,9 @@ def test_list_serving_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, serving_config.ServingConfig) for i in results) @@ -3497,6 +3500,8 @@ async def test_list_serving_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4593,6 +4598,9 @@ def test_list_serving_configs_rest_pager(transport: str = "rest"): pager = client.list_serving_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, serving_config.ServingConfig) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_session_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_session_service.py index 80159f6241b9..42173d04d991 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_session_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_session_service.py @@ -3103,6 +3103,9 @@ def test_list_sessions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.Session) for i in results) @@ -3191,6 +3194,8 @@ async def test_list_sessions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4236,6 +4241,9 @@ def test_list_sessions_rest_pager(transport: str = "rest"): pager = client.list_sessions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, session.Session) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_site_search_engine_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_site_search_engine_service.py index 231c0a8f7528..d9b97c130cbd 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_site_search_engine_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_site_search_engine_service.py @@ -3805,6 +3805,9 @@ def test_list_target_sites_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, site_search_engine.TargetSite) for i in results) @@ -3897,6 +3900,8 @@ async def test_list_target_sites_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6295,6 +6300,9 @@ def test_fetch_domain_verification_status_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, site_search_engine.TargetSite) for i in results) @@ -6387,6 +6395,8 @@ async def test_fetch_domain_verification_status_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7760,6 +7770,9 @@ def test_list_target_sites_rest_pager(transport: str = "rest"): pager = client.list_target_sites(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, site_search_engine.TargetSite) for i in results) @@ -9040,6 +9053,9 @@ def test_fetch_domain_verification_status_rest_pager(transport: str = "rest"): pager = client.fetch_domain_verification_status(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, site_search_engine.TargetSite) for i in results) diff --git a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_user_license_service.py b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_user_license_service.py index 90533d2251c2..5f2f42506222 100644 --- a/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_user_license_service.py +++ b/packages/google-cloud-discoveryengine/tests/unit/gapic/discoveryengine_v1beta/test_user_license_service.py @@ -1776,6 +1776,9 @@ def test_list_user_licenses_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, user_license.UserLicense) for i in results) @@ -1868,6 +1871,8 @@ async def test_list_user_licenses_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2790,6 +2795,9 @@ def test_list_user_licenses_rest_pager(transport: str = "rest"): pager = client.list_user_licenses(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, user_license.UserLicense) for i in results) diff --git a/packages/google-cloud-dlp/noxfile.py b/packages/google-cloud-dlp/noxfile.py index 08977f0c92b7..21e5fe9e02ea 100644 --- a/packages/google-cloud-dlp/noxfile.py +++ b/packages/google-cloud-dlp/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-dlp/testing/constraints-3.15.txt b/packages/google-cloud-dlp/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-dlp/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-dlp/tests/unit/gapic/dlp_v2/test_dlp_service.py b/packages/google-cloud-dlp/tests/unit/gapic/dlp_v2/test_dlp_service.py index 8bc8fa6ad34c..7bbbaa08b782 100644 --- a/packages/google-cloud-dlp/tests/unit/gapic/dlp_v2/test_dlp_service.py +++ b/packages/google-cloud-dlp/tests/unit/gapic/dlp_v2/test_dlp_service.py @@ -4040,6 +4040,9 @@ def test_list_inspect_templates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.InspectTemplate) for i in results) @@ -4132,6 +4135,8 @@ async def test_list_inspect_templates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6017,6 +6022,9 @@ def test_list_deidentify_templates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.DeidentifyTemplate) for i in results) @@ -6109,6 +6117,8 @@ async def test_list_deidentify_templates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8301,6 +8311,9 @@ def test_list_job_triggers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.JobTrigger) for i in results) @@ -8393,6 +8406,8 @@ async def test_list_job_triggers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10536,6 +10551,9 @@ def test_list_discovery_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.DiscoveryConfig) for i in results) @@ -10628,6 +10646,8 @@ async def test_list_discovery_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11803,6 +11823,9 @@ def test_list_dlp_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.DlpJob) for i in results) @@ -11891,6 +11914,8 @@ async def test_list_dlp_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14278,6 +14303,9 @@ def test_list_stored_info_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.StoredInfoType) for i in results) @@ -14370,6 +14398,8 @@ async def test_list_stored_info_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15162,6 +15192,9 @@ def test_list_project_data_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.ProjectDataProfile) for i in results) @@ -15254,6 +15287,8 @@ async def test_list_project_data_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15713,6 +15748,9 @@ def test_list_table_data_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.TableDataProfile) for i in results) @@ -15805,6 +15843,8 @@ async def test_list_table_data_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16264,6 +16304,9 @@ def test_list_column_data_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.ColumnDataProfile) for i in results) @@ -16356,6 +16399,8 @@ async def test_list_column_data_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17172,6 +17217,9 @@ def test_list_file_store_data_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.FileStoreDataProfile) for i in results) @@ -17264,6 +17312,8 @@ async def test_list_file_store_data_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20820,6 +20870,9 @@ def test_list_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.Connection) for i in results) @@ -20908,6 +20961,8 @@ async def test_list_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -21358,6 +21413,9 @@ def test_search_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.Connection) for i in results) @@ -21450,6 +21508,8 @@ async def test_search_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -23324,6 +23384,9 @@ def test_list_inspect_templates_rest_pager(transport: str = "rest"): pager = client.list_inspect_templates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.InspectTemplate) for i in results) @@ -24334,6 +24397,9 @@ def test_list_deidentify_templates_rest_pager(transport: str = "rest"): pager = client.list_deidentify_templates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.DeidentifyTemplate) for i in results) @@ -25510,6 +25576,9 @@ def test_list_job_triggers_rest_pager(transport: str = "rest"): pager = client.list_job_triggers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.JobTrigger) for i in results) @@ -26647,6 +26716,9 @@ def test_list_discovery_configs_rest_pager(transport: str = "rest"): pager = client.list_discovery_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.DiscoveryConfig) for i in results) @@ -27274,6 +27346,9 @@ def test_list_dlp_jobs_rest_pager(transport: str = "rest"): pager = client.list_dlp_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.DlpJob) for i in results) @@ -28556,6 +28631,9 @@ def test_list_stored_info_types_rest_pager(transport: str = "rest"): pager = client.list_stored_info_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.StoredInfoType) for i in results) @@ -28998,6 +29076,9 @@ def test_list_project_data_profiles_rest_pager(transport: str = "rest"): pager = client.list_project_data_profiles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.ProjectDataProfile) for i in results) @@ -29261,6 +29342,9 @@ def test_list_table_data_profiles_rest_pager(transport: str = "rest"): pager = client.list_table_data_profiles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.TableDataProfile) for i in results) @@ -29526,6 +29610,9 @@ def test_list_column_data_profiles_rest_pager(transport: str = "rest"): pager = client.list_column_data_profiles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.ColumnDataProfile) for i in results) @@ -29978,6 +30065,9 @@ def test_list_file_store_data_profiles_rest_pager(transport: str = "rest"): pager = client.list_file_store_data_profiles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.FileStoreDataProfile) for i in results) @@ -31820,6 +31910,9 @@ def test_list_connections_rest_pager(transport: str = "rest"): pager = client.list_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.Connection) for i in results) @@ -32080,6 +32173,9 @@ def test_search_connections_rest_pager(transport: str = "rest"): pager = client.search_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dlp.Connection) for i in results) diff --git a/packages/google-cloud-dms/noxfile.py b/packages/google-cloud-dms/noxfile.py index e7c9e6377709..743600527910 100644 --- a/packages/google-cloud-dms/noxfile.py +++ b/packages/google-cloud-dms/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-dms/testing/constraints-3.15.txt b/packages/google-cloud-dms/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-dms/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-dms/tests/unit/gapic/clouddms_v1/test_data_migration_service.py b/packages/google-cloud-dms/tests/unit/gapic/clouddms_v1/test_data_migration_service.py index 22b06d2d7a0f..9f34be8a0915 100644 --- a/packages/google-cloud-dms/tests/unit/gapic/clouddms_v1/test_data_migration_service.py +++ b/packages/google-cloud-dms/tests/unit/gapic/clouddms_v1/test_data_migration_service.py @@ -1766,6 +1766,9 @@ def test_list_migration_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, clouddms_resources.MigrationJob) for i in results) @@ -1858,6 +1861,8 @@ async def test_list_migration_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5870,6 +5875,9 @@ def test_list_connection_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, clouddms_resources.ConnectionProfile) for i in results) @@ -5962,6 +5970,8 @@ async def test_list_connection_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8593,6 +8603,9 @@ def test_list_private_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, clouddms_resources.PrivateConnection) for i in results) @@ -8685,6 +8698,8 @@ async def test_list_private_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9856,6 +9871,9 @@ def test_list_conversion_workspaces_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -9951,6 +9969,8 @@ async def test_list_conversion_workspaces_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12227,6 +12247,9 @@ def test_list_mapping_rules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -12321,6 +12344,8 @@ async def test_list_mapping_rules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14637,6 +14662,9 @@ def test_describe_database_entities_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -14731,6 +14759,8 @@ async def test_describe_database_entities_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15678,6 +15708,9 @@ def test_fetch_static_ips_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -15766,6 +15799,8 @@ async def test_fetch_static_ips_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-documentai/noxfile.py b/packages/google-cloud-documentai/noxfile.py index 8dcff8465a6c..6edb80b58ade 100644 --- a/packages/google-cloud-documentai/noxfile.py +++ b/packages/google-cloud-documentai/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-documentai/testing/constraints-3.15.txt b/packages/google-cloud-documentai/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-documentai/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-documentai/tests/unit/gapic/documentai_v1/test_document_processor_service.py b/packages/google-cloud-documentai/tests/unit/gapic/documentai_v1/test_document_processor_service.py index 93d16a420d35..f4faa39b72f4 100644 --- a/packages/google-cloud-documentai/tests/unit/gapic/documentai_v1/test_document_processor_service.py +++ b/packages/google-cloud-documentai/tests/unit/gapic/documentai_v1/test_document_processor_service.py @@ -2830,6 +2830,9 @@ def test_list_processor_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, processor_type.ProcessorType) for i in results) @@ -2922,6 +2925,8 @@ async def test_list_processor_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3714,6 +3719,9 @@ def test_list_processors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, processor.Processor) for i in results) @@ -3802,6 +3810,8 @@ async def test_list_processors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5349,6 +5359,9 @@ def test_list_processor_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, processor.ProcessorVersion) for i in results) @@ -5441,6 +5454,8 @@ async def test_list_processor_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9398,6 +9413,9 @@ def test_list_evaluations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.Evaluation) for i in results) @@ -9486,6 +9504,8 @@ async def test_list_evaluations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10350,6 +10370,9 @@ def test_list_processor_types_rest_pager(transport: str = "rest"): pager = client.list_processor_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, processor_type.ProcessorType) for i in results) @@ -10794,6 +10817,9 @@ def test_list_processors_rest_pager(transport: str = "rest"): pager = client.list_processors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, processor.Processor) for i in results) @@ -11623,6 +11649,9 @@ def test_list_processor_versions_rest_pager(transport: str = "rest"): pager = client.list_processor_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, processor.ProcessorVersion) for i in results) @@ -13751,6 +13780,9 @@ def test_list_evaluations_rest_pager(transport: str = "rest"): pager = client.list_evaluations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.Evaluation) for i in results) diff --git a/packages/google-cloud-documentai/tests/unit/gapic/documentai_v1beta3/test_document_processor_service.py b/packages/google-cloud-documentai/tests/unit/gapic/documentai_v1beta3/test_document_processor_service.py index 1efdff74efd9..a31e9caf6f00 100644 --- a/packages/google-cloud-documentai/tests/unit/gapic/documentai_v1beta3/test_document_processor_service.py +++ b/packages/google-cloud-documentai/tests/unit/gapic/documentai_v1beta3/test_document_processor_service.py @@ -2836,6 +2836,9 @@ def test_list_processor_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, processor_type.ProcessorType) for i in results) @@ -2928,6 +2931,8 @@ async def test_list_processor_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3720,6 +3725,9 @@ def test_list_processors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, processor.Processor) for i in results) @@ -3808,6 +3816,8 @@ async def test_list_processors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5355,6 +5365,9 @@ def test_list_processor_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, processor.ProcessorVersion) for i in results) @@ -5447,6 +5460,8 @@ async def test_list_processor_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9404,6 +9419,9 @@ def test_list_evaluations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.Evaluation) for i in results) @@ -9492,6 +9510,8 @@ async def test_list_evaluations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10707,6 +10727,9 @@ def test_list_processor_types_rest_pager(transport: str = "rest"): pager = client.list_processor_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, processor_type.ProcessorType) for i in results) @@ -11152,6 +11175,9 @@ def test_list_processors_rest_pager(transport: str = "rest"): pager = client.list_processors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, processor.Processor) for i in results) @@ -11982,6 +12008,9 @@ def test_list_processor_versions_rest_pager(transport: str = "rest"): pager = client.list_processor_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, processor.ProcessorVersion) for i in results) @@ -14112,6 +14141,9 @@ def test_list_evaluations_rest_pager(transport: str = "rest"): pager = client.list_evaluations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, evaluation.Evaluation) for i in results) diff --git a/packages/google-cloud-documentai/tests/unit/gapic/documentai_v1beta3/test_document_service.py b/packages/google-cloud-documentai/tests/unit/gapic/documentai_v1beta3/test_document_service.py index 7276e1d2429b..639522f8ec96 100644 --- a/packages/google-cloud-documentai/tests/unit/gapic/documentai_v1beta3/test_document_service.py +++ b/packages/google-cloud-documentai/tests/unit/gapic/documentai_v1beta3/test_document_service.py @@ -2756,6 +2756,9 @@ def test_list_documents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document_service.DocumentMetadata) for i in results) @@ -2844,6 +2847,8 @@ async def test_list_documents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4777,6 +4782,9 @@ def test_list_documents_rest_pager(transport: str = "rest"): pager = client.list_documents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document_service.DocumentMetadata) for i in results) diff --git a/packages/google-cloud-domains/noxfile.py b/packages/google-cloud-domains/noxfile.py index e1810b6976dd..eba25f9550e1 100644 --- a/packages/google-cloud-domains/noxfile.py +++ b/packages/google-cloud-domains/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-domains/testing/constraints-3.15.txt b/packages/google-cloud-domains/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-domains/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-domains/tests/unit/gapic/domains_v1/test_domains.py b/packages/google-cloud-domains/tests/unit/gapic/domains_v1/test_domains.py index 87c9d28afee5..4d70ce11ac71 100644 --- a/packages/google-cloud-domains/tests/unit/gapic/domains_v1/test_domains.py +++ b/packages/google-cloud-domains/tests/unit/gapic/domains_v1/test_domains.py @@ -3398,6 +3398,9 @@ def test_list_registrations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, domains.Registration) for i in results) @@ -3490,6 +3493,8 @@ async def test_list_registrations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8028,6 +8033,9 @@ def test_list_registrations_rest_pager(transport: str = "rest"): pager = client.list_registrations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, domains.Registration) for i in results) diff --git a/packages/google-cloud-domains/tests/unit/gapic/domains_v1beta1/test_domains.py b/packages/google-cloud-domains/tests/unit/gapic/domains_v1beta1/test_domains.py index 4c70e34ab972..a57b56e772bd 100644 --- a/packages/google-cloud-domains/tests/unit/gapic/domains_v1beta1/test_domains.py +++ b/packages/google-cloud-domains/tests/unit/gapic/domains_v1beta1/test_domains.py @@ -3398,6 +3398,9 @@ def test_list_registrations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, domains.Registration) for i in results) @@ -3490,6 +3493,8 @@ async def test_list_registrations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8028,6 +8033,9 @@ def test_list_registrations_rest_pager(transport: str = "rest"): pager = client.list_registrations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, domains.Registration) for i in results) diff --git a/packages/google-cloud-edgecontainer/noxfile.py b/packages/google-cloud-edgecontainer/noxfile.py index 43042ab41c58..cf3fcc51ef69 100644 --- a/packages/google-cloud-edgecontainer/noxfile.py +++ b/packages/google-cloud-edgecontainer/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-edgecontainer/testing/constraints-3.15.txt b/packages/google-cloud-edgecontainer/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-edgecontainer/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-edgecontainer/tests/unit/gapic/edgecontainer_v1/test_edge_container.py b/packages/google-cloud-edgecontainer/tests/unit/gapic/edgecontainer_v1/test_edge_container.py index 7ee77586ae7a..6883f6d9df71 100644 --- a/packages/google-cloud-edgecontainer/tests/unit/gapic/edgecontainer_v1/test_edge_container.py +++ b/packages/google-cloud-edgecontainer/tests/unit/gapic/edgecontainer_v1/test_edge_container.py @@ -1714,6 +1714,9 @@ def test_list_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Cluster) for i in results) @@ -1802,6 +1805,8 @@ async def test_list_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4688,6 +4693,9 @@ def test_list_node_pools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.NodePool) for i in results) @@ -4776,6 +4784,8 @@ async def test_list_node_pools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6574,6 +6584,9 @@ def test_list_machines_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Machine) for i in results) @@ -6662,6 +6675,8 @@ async def test_list_machines_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7456,6 +7471,9 @@ def test_list_vpn_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.VpnConnection) for i in results) @@ -7548,6 +7566,8 @@ async def test_list_vpn_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9279,6 +9299,9 @@ def test_list_clusters_rest_pager(transport: str = "rest"): pager = client.list_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Cluster) for i in results) @@ -10769,6 +10792,9 @@ def test_list_node_pools_rest_pager(transport: str = "rest"): pager = client.list_node_pools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.NodePool) for i in results) @@ -11709,6 +11735,9 @@ def test_list_machines_rest_pager(transport: str = "rest"): pager = client.list_machines(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Machine) for i in results) @@ -12148,6 +12177,9 @@ def test_list_vpn_connections_rest_pager(transport: str = "rest"): pager = client.list_vpn_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.VpnConnection) for i in results) diff --git a/packages/google-cloud-edgenetwork/noxfile.py b/packages/google-cloud-edgenetwork/noxfile.py index 52259b092b2c..70481c0aaccf 100644 --- a/packages/google-cloud-edgenetwork/noxfile.py +++ b/packages/google-cloud-edgenetwork/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-edgenetwork/testing/constraints-3.15.txt b/packages/google-cloud-edgenetwork/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-edgenetwork/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-edgenetwork/tests/unit/gapic/edgenetwork_v1/test_edge_network.py b/packages/google-cloud-edgenetwork/tests/unit/gapic/edgenetwork_v1/test_edge_network.py index 0651212f78b6..42ea7a765418 100644 --- a/packages/google-cloud-edgenetwork/tests/unit/gapic/edgenetwork_v1/test_edge_network.py +++ b/packages/google-cloud-edgenetwork/tests/unit/gapic/edgenetwork_v1/test_edge_network.py @@ -1993,6 +1993,9 @@ def test_list_zones_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Zone) for i in results) @@ -2081,6 +2084,8 @@ async def test_list_zones_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2839,6 +2844,9 @@ def test_list_networks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Network) for i in results) @@ -2927,6 +2935,8 @@ async def test_list_networks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4693,6 +4703,9 @@ def test_list_subnets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Subnet) for i in results) @@ -4781,6 +4794,8 @@ async def test_list_subnets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6603,6 +6618,9 @@ def test_list_interconnects_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Interconnect) for i in results) @@ -6695,6 +6713,8 @@ async def test_list_interconnects_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7857,6 +7877,9 @@ def test_list_interconnect_attachments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.InterconnectAttachment) for i in results) @@ -7949,6 +7972,8 @@ async def test_list_interconnect_attachments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9492,6 +9517,9 @@ def test_list_routers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Router) for i in results) @@ -9580,6 +9608,8 @@ async def test_list_routers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11730,6 +11760,9 @@ def test_list_zones_rest_pager(transport: str = "rest"): pager = client.list_zones(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Zone) for i in results) @@ -12161,6 +12194,9 @@ def test_list_networks_rest_pager(transport: str = "rest"): pager = client.list_networks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Network) for i in results) @@ -13170,6 +13206,9 @@ def test_list_subnets_rest_pager(transport: str = "rest"): pager = client.list_subnets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Subnet) for i in results) @@ -14200,6 +14239,9 @@ def test_list_interconnects_rest_pager(transport: str = "rest"): pager = client.list_interconnects(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Interconnect) for i in results) @@ -14834,6 +14876,9 @@ def test_list_interconnect_attachments_rest_pager(transport: str = "rest"): pager = client.list_interconnect_attachments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.InterconnectAttachment) for i in results) @@ -15692,6 +15737,9 @@ def test_list_routers_rest_pager(transport: str = "rest"): pager = client.list_routers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Router) for i in results) diff --git a/packages/google-cloud-enterpriseknowledgegraph/noxfile.py b/packages/google-cloud-enterpriseknowledgegraph/noxfile.py index d8171fa7ea3a..cb3cea980b77 100644 --- a/packages/google-cloud-enterpriseknowledgegraph/noxfile.py +++ b/packages/google-cloud-enterpriseknowledgegraph/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-enterpriseknowledgegraph/testing/constraints-3.15.txt b/packages/google-cloud-enterpriseknowledgegraph/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-enterpriseknowledgegraph/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-enterpriseknowledgegraph/tests/unit/gapic/enterpriseknowledgegraph_v1/test_enterprise_knowledge_graph_service.py b/packages/google-cloud-enterpriseknowledgegraph/tests/unit/gapic/enterpriseknowledgegraph_v1/test_enterprise_knowledge_graph_service.py index 9e1ff07b6aee..f75a25e1820c 100644 --- a/packages/google-cloud-enterpriseknowledgegraph/tests/unit/gapic/enterpriseknowledgegraph_v1/test_enterprise_knowledge_graph_service.py +++ b/packages/google-cloud-enterpriseknowledgegraph/tests/unit/gapic/enterpriseknowledgegraph_v1/test_enterprise_knowledge_graph_service.py @@ -2581,6 +2581,9 @@ def test_list_entity_reconciliation_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.EntityReconciliationJob) for i in results) @@ -2673,6 +2676,8 @@ async def test_list_entity_reconciliation_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5355,6 +5360,9 @@ def test_list_entity_reconciliation_jobs_rest_pager(transport: str = "rest"): pager = client.list_entity_reconciliation_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.EntityReconciliationJob) for i in results) diff --git a/packages/google-cloud-error-reporting/noxfile.py b/packages/google-cloud-error-reporting/noxfile.py index e13108291d94..db415715c64d 100644 --- a/packages/google-cloud-error-reporting/noxfile.py +++ b/packages/google-cloud-error-reporting/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", # TODO(https://github.com/googleapis/google-cloud-python/issues/16083) @@ -567,7 +576,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-error-reporting/testing/constraints-3.15.txt b/packages/google-cloud-error-reporting/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-error-reporting/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-error-reporting/tests/unit/gapic/errorreporting_v1beta1/test_error_stats_service.py b/packages/google-cloud-error-reporting/tests/unit/gapic/errorreporting_v1beta1/test_error_stats_service.py index 8fc73119c1a4..05b3782311ab 100644 --- a/packages/google-cloud-error-reporting/tests/unit/gapic/errorreporting_v1beta1/test_error_stats_service.py +++ b/packages/google-cloud-error-reporting/tests/unit/gapic/errorreporting_v1beta1/test_error_stats_service.py @@ -1762,6 +1762,9 @@ def test_list_group_stats_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, error_stats_service.ErrorGroupStats) for i in results) @@ -1850,6 +1853,8 @@ async def test_list_group_stats_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2292,6 +2297,9 @@ def test_list_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common.ErrorEvent) for i in results) @@ -2380,6 +2388,8 @@ async def test_list_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3019,6 +3029,9 @@ def test_list_group_stats_rest_pager(transport: str = "rest"): pager = client.list_group_stats(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, error_stats_service.ErrorGroupStats) for i in results) @@ -3300,6 +3313,9 @@ def test_list_events_rest_pager(transport: str = "rest"): pager = client.list_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common.ErrorEvent) for i in results) diff --git a/packages/google-cloud-essential-contacts/noxfile.py b/packages/google-cloud-essential-contacts/noxfile.py index 4da6f982d14b..e70ba0839d27 100644 --- a/packages/google-cloud-essential-contacts/noxfile.py +++ b/packages/google-cloud-essential-contacts/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-essential-contacts/testing/constraints-3.15.txt b/packages/google-cloud-essential-contacts/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-essential-contacts/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-essential-contacts/tests/unit/gapic/essential_contacts_v1/test_essential_contacts_service.py b/packages/google-cloud-essential-contacts/tests/unit/gapic/essential_contacts_v1/test_essential_contacts_service.py index c28ec66cdc76..a479d2d5ff2c 100644 --- a/packages/google-cloud-essential-contacts/tests/unit/gapic/essential_contacts_v1/test_essential_contacts_service.py +++ b/packages/google-cloud-essential-contacts/tests/unit/gapic/essential_contacts_v1/test_essential_contacts_service.py @@ -2468,6 +2468,9 @@ def test_list_contacts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Contact) for i in results) @@ -2556,6 +2559,8 @@ async def test_list_contacts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3556,6 +3561,9 @@ def test_compute_contacts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Contact) for i in results) @@ -3644,6 +3652,8 @@ async def test_compute_contacts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4542,6 +4552,9 @@ def test_list_contacts_rest_pager(transport: str = "rest"): pager = client.list_contacts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Contact) for i in results) @@ -5085,6 +5098,9 @@ def test_compute_contacts_rest_pager(transport: str = "rest"): pager = client.compute_contacts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Contact) for i in results) diff --git a/packages/google-cloud-eventarc-publishing/noxfile.py b/packages/google-cloud-eventarc-publishing/noxfile.py index 4ab114200c08..99f0f45e960e 100644 --- a/packages/google-cloud-eventarc-publishing/noxfile.py +++ b/packages/google-cloud-eventarc-publishing/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-eventarc-publishing/testing/constraints-3.15.txt b/packages/google-cloud-eventarc-publishing/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-eventarc-publishing/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-eventarc/noxfile.py b/packages/google-cloud-eventarc/noxfile.py index 6d8722a224dc..a7ae433925fc 100644 --- a/packages/google-cloud-eventarc/noxfile.py +++ b/packages/google-cloud-eventarc/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-eventarc/testing/constraints-3.15.txt b/packages/google-cloud-eventarc/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-eventarc/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-eventarc/tests/unit/gapic/eventarc_v1/test_eventarc.py b/packages/google-cloud-eventarc/tests/unit/gapic/eventarc_v1/test_eventarc.py index 5941fd81d448..3cbbed0cc0c3 100644 --- a/packages/google-cloud-eventarc/tests/unit/gapic/eventarc_v1/test_eventarc.py +++ b/packages/google-cloud-eventarc/tests/unit/gapic/eventarc_v1/test_eventarc.py @@ -2029,6 +2029,9 @@ def test_list_triggers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, trigger.Trigger) for i in results) @@ -2117,6 +2120,8 @@ async def test_list_triggers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3930,6 +3935,9 @@ def test_list_channels_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, channel.Channel) for i in results) @@ -4018,6 +4026,8 @@ async def test_list_channels_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5790,6 +5800,9 @@ def test_list_providers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, discovery.Provider) for i in results) @@ -5878,6 +5891,8 @@ async def test_list_providers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6692,6 +6707,9 @@ def test_list_channel_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, channel_connection.ChannelConnection) for i in results) @@ -6784,6 +6802,8 @@ async def test_list_channel_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9024,6 +9044,9 @@ def test_list_message_buses_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, message_bus.MessageBus) for i in results) @@ -9116,6 +9139,8 @@ async def test_list_message_buses_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9579,6 +9604,9 @@ def test_list_message_bus_enrollments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -9671,6 +9699,8 @@ async def test_list_message_bus_enrollments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11539,6 +11569,9 @@ def test_list_enrollments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, enrollment.Enrollment) for i in results) @@ -11627,6 +11660,8 @@ async def test_list_enrollments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13475,6 +13510,9 @@ def test_list_pipelines_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, pipeline.Pipeline) for i in results) @@ -13563,6 +13601,8 @@ async def test_list_pipelines_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15411,6 +15451,9 @@ def test_list_google_api_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, google_api_source.GoogleApiSource) for i in results) @@ -15503,6 +15546,8 @@ async def test_list_google_api_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17066,6 +17111,9 @@ def test_list_triggers_rest_pager(transport: str = "rest"): pager = client.list_triggers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, trigger.Trigger) for i in results) @@ -18006,6 +18054,9 @@ def test_list_channels_rest_pager(transport: str = "rest"): pager = client.list_channels(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, channel.Channel) for i in results) @@ -18933,6 +18984,9 @@ def test_list_providers_rest_pager(transport: str = "rest"): pager = client.list_providers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, discovery.Provider) for i in results) @@ -19379,6 +19433,9 @@ def test_list_channel_connections_rest_pager(transport: str = "rest"): pager = client.list_channel_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, channel_connection.ChannelConnection) for i in results) @@ -20601,6 +20658,9 @@ def test_list_message_buses_rest_pager(transport: str = "rest"): pager = client.list_message_buses(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, message_bus.MessageBus) for i in results) @@ -20866,6 +20926,9 @@ def test_list_message_bus_enrollments_rest_pager(transport: str = "rest"): pager = client.list_message_bus_enrollments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -21928,6 +21991,9 @@ def test_list_enrollments_rest_pager(transport: str = "rest"): pager = client.list_enrollments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, enrollment.Enrollment) for i in results) @@ -22978,6 +23044,9 @@ def test_list_pipelines_rest_pager(transport: str = "rest"): pager = client.list_pipelines(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, pipeline.Pipeline) for i in results) @@ -24034,6 +24103,9 @@ def test_list_google_api_sources_rest_pager(transport: str = "rest"): pager = client.list_google_api_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, google_api_source.GoogleApiSource) for i in results) diff --git a/packages/google-cloud-filestore/noxfile.py b/packages/google-cloud-filestore/noxfile.py index dcb7a07707a3..684054bc902f 100644 --- a/packages/google-cloud-filestore/noxfile.py +++ b/packages/google-cloud-filestore/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-filestore/testing/constraints-3.15.txt b/packages/google-cloud-filestore/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-filestore/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-filestore/tests/unit/gapic/filestore_v1/test_cloud_filestore_manager.py b/packages/google-cloud-filestore/tests/unit/gapic/filestore_v1/test_cloud_filestore_manager.py index 0953485aef1d..dd380290c6fa 100644 --- a/packages/google-cloud-filestore/tests/unit/gapic/filestore_v1/test_cloud_filestore_manager.py +++ b/packages/google-cloud-filestore/tests/unit/gapic/filestore_v1/test_cloud_filestore_manager.py @@ -1779,6 +1779,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_filestore_service.Instance) for i in results) @@ -1867,6 +1870,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4195,6 +4200,9 @@ def test_list_snapshots_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_filestore_service.Snapshot) for i in results) @@ -4283,6 +4291,8 @@ async def test_list_snapshots_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6067,6 +6077,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_filestore_service.Backup) for i in results) @@ -6155,6 +6168,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8096,6 +8111,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_filestore_service.Instance) for i in results) @@ -9298,6 +9316,9 @@ def test_list_snapshots_rest_pager(transport: str = "rest"): pager = client.list_snapshots(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_filestore_service.Snapshot) for i in results) @@ -10313,6 +10334,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_filestore_service.Backup) for i in results) diff --git a/packages/google-cloud-financialservices/noxfile.py b/packages/google-cloud-financialservices/noxfile.py index e9376f8c2c18..09c50640fedb 100644 --- a/packages/google-cloud-financialservices/noxfile.py +++ b/packages/google-cloud-financialservices/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-financialservices/testing/constraints-3.15.txt b/packages/google-cloud-financialservices/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-financialservices/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-financialservices/tests/unit/gapic/financialservices_v1/test_aml.py b/packages/google-cloud-financialservices/tests/unit/gapic/financialservices_v1/test_aml.py index 96b76fba91ae..11b287c24955 100644 --- a/packages/google-cloud-financialservices/tests/unit/gapic/financialservices_v1/test_aml.py +++ b/packages/google-cloud-financialservices/tests/unit/gapic/financialservices_v1/test_aml.py @@ -1641,6 +1641,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) @@ -1729,6 +1732,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4269,6 +4274,9 @@ def test_list_datasets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataset.Dataset) for i in results) @@ -4357,6 +4365,8 @@ async def test_list_datasets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6137,6 +6147,9 @@ def test_list_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -6225,6 +6238,8 @@ async def test_list_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8406,6 +8421,9 @@ def test_list_engine_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, engine_config.EngineConfig) for i in results) @@ -8498,6 +8516,8 @@ async def test_list_engine_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11117,6 +11137,9 @@ def test_list_engine_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, engine_version.EngineVersion) for i in results) @@ -11209,6 +11232,8 @@ async def test_list_engine_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11670,6 +11695,9 @@ def test_list_prediction_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, prediction_result.PredictionResult) for i in results) @@ -11762,6 +11790,8 @@ async def test_list_prediction_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14038,6 +14068,9 @@ def test_list_backtest_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backtest_result.BacktestResult) for i in results) @@ -14130,6 +14163,8 @@ async def test_list_backtest_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16245,6 +16280,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) @@ -17671,6 +17709,9 @@ def test_list_datasets_rest_pager(transport: str = "rest"): pager = client.list_datasets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataset.Dataset) for i in results) @@ -18700,6 +18741,9 @@ def test_list_models_rest_pager(transport: str = "rest"): pager = client.list_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -19932,6 +19976,9 @@ def test_list_engine_configs_rest_pager(transport: str = "rest"): pager = client.list_engine_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, engine_config.EngineConfig) for i in results) @@ -21372,6 +21419,9 @@ def test_list_engine_versions_rest_pager(transport: str = "rest"): pager = client.list_engine_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, engine_version.EngineVersion) for i in results) @@ -21643,6 +21693,9 @@ def test_list_prediction_results_rest_pager(transport: str = "rest"): pager = client.list_prediction_results(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, prediction_result.PredictionResult) for i in results) @@ -22910,6 +22963,9 @@ def test_list_backtest_results_rest_pager(transport: str = "rest"): pager = client.list_backtest_results(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backtest_result.BacktestResult) for i in results) diff --git a/packages/google-cloud-firestore/noxfile.py b/packages/google-cloud-firestore/noxfile.py index 4df37240719c..5ede8b454acf 100644 --- a/packages/google-cloud-firestore/noxfile.py +++ b/packages/google-cloud-firestore/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -166,6 +174,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -629,7 +638,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-firestore/testing/constraints-3.15.txt b/packages/google-cloud-firestore/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-firestore/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-firestore/tests/unit/gapic/firestore_admin_v1/test_firestore_admin.py b/packages/google-cloud-firestore/tests/unit/gapic/firestore_admin_v1/test_firestore_admin.py index 3e16f524ee95..1f4a086db788 100644 --- a/packages/google-cloud-firestore/tests/unit/gapic/firestore_admin_v1/test_firestore_admin.py +++ b/packages/google-cloud-firestore/tests/unit/gapic/firestore_admin_v1/test_firestore_admin.py @@ -2067,6 +2067,9 @@ def test_list_indexes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, index.Index) for i in results) @@ -2155,6 +2158,8 @@ async def test_list_indexes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3885,6 +3890,9 @@ def test_list_fields_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, field.Field) for i in results) @@ -3973,6 +3981,8 @@ async def test_list_fields_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12759,6 +12769,9 @@ def test_list_indexes_rest_pager(transport: str = "rest"): pager = client.list_indexes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, index.Index) for i in results) @@ -13731,6 +13744,9 @@ def test_list_fields_rest_pager(transport: str = "rest"): pager = client.list_fields(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, field.Field) for i in results) diff --git a/packages/google-cloud-firestore/tests/unit/gapic/firestore_v1/test_firestore.py b/packages/google-cloud-firestore/tests/unit/gapic/firestore_v1/test_firestore.py index 819c67f2cacf..6e539e684296 100644 --- a/packages/google-cloud-firestore/tests/unit/gapic/firestore_v1/test_firestore.py +++ b/packages/google-cloud-firestore/tests/unit/gapic/firestore_v1/test_firestore.py @@ -1842,6 +1842,9 @@ def test_list_documents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document.Document) for i in results) @@ -1930,6 +1933,8 @@ async def test_list_documents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4833,6 +4838,9 @@ def test_partition_query_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, query.Cursor) for i in results) @@ -4921,6 +4929,8 @@ async def test_partition_query_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5665,6 +5675,9 @@ def test_list_collection_ids_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -5757,6 +5770,8 @@ async def test_list_collection_ids_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6629,6 +6644,9 @@ def test_list_documents_rest_pager(transport: str = "rest"): pager = client.list_documents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, document.Document) for i in results) @@ -8236,6 +8254,9 @@ def test_partition_query_rest_pager(transport: str = "rest"): pager = client.partition_query(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, query.Cursor) for i in results) @@ -8504,6 +8525,9 @@ def test_list_collection_ids_rest_pager(transport: str = "rest"): pager = client.list_collection_ids(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) diff --git a/packages/google-cloud-functions/noxfile.py b/packages/google-cloud-functions/noxfile.py index c46cf4fc5cad..5133eb3dde80 100644 --- a/packages/google-cloud-functions/noxfile.py +++ b/packages/google-cloud-functions/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-functions/testing/constraints-3.15.txt b/packages/google-cloud-functions/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-functions/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-functions/tests/unit/gapic/functions_v1/test_cloud_functions_service.py b/packages/google-cloud-functions/tests/unit/gapic/functions_v1/test_cloud_functions_service.py index 6c2f40a704ef..51b31f6092e5 100644 --- a/packages/google-cloud-functions/tests/unit/gapic/functions_v1/test_cloud_functions_service.py +++ b/packages/google-cloud-functions/tests/unit/gapic/functions_v1/test_cloud_functions_service.py @@ -1701,6 +1701,9 @@ def test_list_functions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, functions.CloudFunction) for i in results) @@ -1789,6 +1792,8 @@ async def test_list_functions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5006,6 +5011,9 @@ def test_list_functions_rest_pager(transport: str = "rest"): pager = client.list_functions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, functions.CloudFunction) for i in results) diff --git a/packages/google-cloud-functions/tests/unit/gapic/functions_v2/test_function_service.py b/packages/google-cloud-functions/tests/unit/gapic/functions_v2/test_function_service.py index bdd051385f01..37ad7a5f9d5a 100644 --- a/packages/google-cloud-functions/tests/unit/gapic/functions_v2/test_function_service.py +++ b/packages/google-cloud-functions/tests/unit/gapic/functions_v2/test_function_service.py @@ -2090,6 +2090,9 @@ def test_list_functions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, functions.Function) for i in results) @@ -2178,6 +2181,8 @@ async def test_list_functions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4507,6 +4512,9 @@ def test_list_functions_rest_pager(transport: str = "rest"): pager = client.list_functions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, functions.Function) for i in results) diff --git a/packages/google-cloud-gdchardwaremanagement/noxfile.py b/packages/google-cloud-gdchardwaremanagement/noxfile.py index 6f51ea26c38b..741ad04bb433 100644 --- a/packages/google-cloud-gdchardwaremanagement/noxfile.py +++ b/packages/google-cloud-gdchardwaremanagement/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-gdchardwaremanagement/testing/constraints-3.15.txt b/packages/google-cloud-gdchardwaremanagement/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-gdchardwaremanagement/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-gdchardwaremanagement/tests/unit/gapic/gdchardwaremanagement_v1alpha/test_gdc_hardware_management.py b/packages/google-cloud-gdchardwaremanagement/tests/unit/gapic/gdchardwaremanagement_v1alpha/test_gdc_hardware_management.py index 7ec6687e7b81..3d05f118dacc 100644 --- a/packages/google-cloud-gdchardwaremanagement/tests/unit/gapic/gdchardwaremanagement_v1alpha/test_gdc_hardware_management.py +++ b/packages/google-cloud-gdchardwaremanagement/tests/unit/gapic/gdchardwaremanagement_v1alpha/test_gdc_hardware_management.py @@ -1782,6 +1782,9 @@ def test_list_orders_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Order) for i in results) @@ -1870,6 +1873,8 @@ async def test_list_orders_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4344,6 +4349,9 @@ def test_list_sites_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Site) for i in results) @@ -4432,6 +4440,8 @@ async def test_list_sites_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6246,6 +6256,9 @@ def test_list_hardware_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.HardwareGroup) for i in results) @@ -6338,6 +6351,8 @@ async def test_list_hardware_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8217,6 +8232,9 @@ def test_list_hardware_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Hardware) for i in results) @@ -8305,6 +8323,8 @@ async def test_list_hardware_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10105,6 +10125,9 @@ def test_list_comments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Comment) for i in results) @@ -10193,6 +10216,8 @@ async def test_list_comments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11699,6 +11724,9 @@ def test_list_change_log_entries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ChangeLogEntry) for i in results) @@ -11791,6 +11819,8 @@ async def test_list_change_log_entries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12575,6 +12605,9 @@ def test_list_skus_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Sku) for i in results) @@ -12663,6 +12696,8 @@ async def test_list_skus_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13439,6 +13474,9 @@ def test_list_zones_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Zone) for i in results) @@ -13527,6 +13565,8 @@ async def test_list_zones_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15916,6 +15956,9 @@ def test_list_orders_rest_pager(transport: str = "rest"): pager = client.list_orders(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Order) for i in results) @@ -17284,6 +17327,9 @@ def test_list_sites_rest_pager(transport: str = "rest"): pager = client.list_sites(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Site) for i in results) @@ -18293,6 +18339,9 @@ def test_list_hardware_groups_rest_pager(transport: str = "rest"): pager = client.list_hardware_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.HardwareGroup) for i in results) @@ -19330,6 +19379,9 @@ def test_list_hardware_rest_pager(transport: str = "rest"): pager = client.list_hardware(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Hardware) for i in results) @@ -20330,6 +20382,9 @@ def test_list_comments_rest_pager(transport: str = "rest"): pager = client.list_comments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Comment) for i in results) @@ -21169,6 +21224,9 @@ def test_list_change_log_entries_rest_pager(transport: str = "rest"): pager = client.list_change_log_entries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ChangeLogEntry) for i in results) @@ -21608,6 +21666,9 @@ def test_list_skus_rest_pager(transport: str = "rest"): pager = client.list_skus(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Sku) for i in results) @@ -22038,6 +22099,9 @@ def test_list_zones_rest_pager(transport: str = "rest"): pager = client.list_zones(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Zone) for i in results) diff --git a/packages/google-cloud-geminidataanalytics/noxfile.py b/packages/google-cloud-geminidataanalytics/noxfile.py index 8e27ba9291da..42cf25e21045 100644 --- a/packages/google-cloud-geminidataanalytics/noxfile.py +++ b/packages/google-cloud-geminidataanalytics/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-geminidataanalytics/testing/constraints-3.15.txt b/packages/google-cloud-geminidataanalytics/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-geminidataanalytics/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1/test_data_agent_service.py b/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1/test_data_agent_service.py index 1a1f6af2bd50..1d1225d77b59 100644 --- a/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1/test_data_agent_service.py +++ b/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1/test_data_agent_service.py @@ -1759,6 +1759,9 @@ def test_list_data_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_agent.DataAgent) for i in results) @@ -1847,6 +1850,8 @@ async def test_list_data_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2308,6 +2313,9 @@ def test_list_accessible_data_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_agent.DataAgent) for i in results) @@ -2400,6 +2408,8 @@ async def test_list_accessible_data_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6007,6 +6017,9 @@ def test_list_data_agents_rest_pager(transport: str = "rest"): pager = client.list_data_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_agent.DataAgent) for i in results) @@ -6281,6 +6294,9 @@ def test_list_accessible_data_agents_rest_pager(transport: str = "rest"): pager = client.list_accessible_data_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_agent.DataAgent) for i in results) diff --git a/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1/test_data_chat_service.py b/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1/test_data_chat_service.py index 5c945de3cb04..1f4545952753 100644 --- a/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1/test_data_chat_service.py +++ b/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1/test_data_chat_service.py @@ -3037,6 +3037,9 @@ def test_list_conversations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -3129,6 +3132,8 @@ async def test_list_conversations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3561,6 +3566,9 @@ def test_list_messages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_chat_service.StorageMessage) for i in results) @@ -3649,6 +3657,8 @@ async def test_list_messages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4653,6 +4663,9 @@ def test_list_conversations_rest_pager(transport: str = "rest"): pager = client.list_conversations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -4915,6 +4928,9 @@ def test_list_messages_rest_pager(transport: str = "rest"): pager = client.list_messages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_chat_service.StorageMessage) for i in results) diff --git a/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1alpha/test_data_agent_service.py b/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1alpha/test_data_agent_service.py index a9762f9e709b..70ae714bc836 100644 --- a/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1alpha/test_data_agent_service.py +++ b/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1alpha/test_data_agent_service.py @@ -1761,6 +1761,9 @@ def test_list_data_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_agent.DataAgent) for i in results) @@ -1849,6 +1852,8 @@ async def test_list_data_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2310,6 +2315,9 @@ def test_list_accessible_data_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_agent.DataAgent) for i in results) @@ -2402,6 +2410,8 @@ async def test_list_accessible_data_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5998,6 +6008,9 @@ def test_list_data_agents_rest_pager(transport: str = "rest"): pager = client.list_data_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_agent.DataAgent) for i in results) @@ -6272,6 +6285,9 @@ def test_list_accessible_data_agents_rest_pager(transport: str = "rest"): pager = client.list_accessible_data_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_agent.DataAgent) for i in results) diff --git a/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1alpha/test_data_chat_service.py b/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1alpha/test_data_chat_service.py index d27f5a14a4cb..5ffd881320f7 100644 --- a/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1alpha/test_data_chat_service.py +++ b/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1alpha/test_data_chat_service.py @@ -3026,6 +3026,9 @@ def test_list_conversations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -3118,6 +3121,8 @@ async def test_list_conversations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3550,6 +3555,9 @@ def test_list_messages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_chat_service.StorageMessage) for i in results) @@ -3638,6 +3646,8 @@ async def test_list_messages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4896,6 +4906,9 @@ def test_list_conversations_rest_pager(transport: str = "rest"): pager = client.list_conversations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -5158,6 +5171,9 @@ def test_list_messages_rest_pager(transport: str = "rest"): pager = client.list_messages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_chat_service.StorageMessage) for i in results) diff --git a/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1beta/test_data_agent_service.py b/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1beta/test_data_agent_service.py index 112b3ba57d7a..af2f3ca990fe 100644 --- a/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1beta/test_data_agent_service.py +++ b/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1beta/test_data_agent_service.py @@ -1761,6 +1761,9 @@ def test_list_data_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_agent.DataAgent) for i in results) @@ -1849,6 +1852,8 @@ async def test_list_data_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2310,6 +2315,9 @@ def test_list_accessible_data_agents_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_agent.DataAgent) for i in results) @@ -2402,6 +2410,8 @@ async def test_list_accessible_data_agents_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6010,6 +6020,9 @@ def test_list_data_agents_rest_pager(transport: str = "rest"): pager = client.list_data_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_agent.DataAgent) for i in results) @@ -6284,6 +6297,9 @@ def test_list_accessible_data_agents_rest_pager(transport: str = "rest"): pager = client.list_accessible_data_agents(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_agent.DataAgent) for i in results) diff --git a/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1beta/test_data_chat_service.py b/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1beta/test_data_chat_service.py index 8c92be8a4f29..54f31fc9f2c9 100644 --- a/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1beta/test_data_chat_service.py +++ b/packages/google-cloud-geminidataanalytics/tests/unit/gapic/geminidataanalytics_v1beta/test_data_chat_service.py @@ -3042,6 +3042,9 @@ def test_list_conversations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -3134,6 +3137,8 @@ async def test_list_conversations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3566,6 +3571,9 @@ def test_list_messages_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_chat_service.StorageMessage) for i in results) @@ -3654,6 +3662,8 @@ async def test_list_messages_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4912,6 +4922,9 @@ def test_list_conversations_rest_pager(transport: str = "rest"): pager = client.list_conversations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversation.Conversation) for i in results) @@ -5174,6 +5187,9 @@ def test_list_messages_rest_pager(transport: str = "rest"): pager = client.list_messages(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_chat_service.StorageMessage) for i in results) diff --git a/packages/google-cloud-gke-backup/noxfile.py b/packages/google-cloud-gke-backup/noxfile.py index 56fab5920e83..13e424c5c439 100644 --- a/packages/google-cloud-gke-backup/noxfile.py +++ b/packages/google-cloud-gke-backup/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-gke-backup/testing/constraints-3.15.txt b/packages/google-cloud-gke-backup/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-gke-backup/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-gke-backup/tests/unit/gapic/gke_backup_v1/test_backup_for_gke.py b/packages/google-cloud-gke-backup/tests/unit/gapic/gke_backup_v1/test_backup_for_gke.py index bad7302f6fc8..5bd63c272488 100644 --- a/packages/google-cloud-gke-backup/tests/unit/gapic/gke_backup_v1/test_backup_for_gke.py +++ b/packages/google-cloud-gke-backup/tests/unit/gapic/gke_backup_v1/test_backup_for_gke.py @@ -2105,6 +2105,9 @@ def test_list_backup_plans_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup_plan.BackupPlan) for i in results) @@ -2197,6 +2200,8 @@ async def test_list_backup_plans_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4096,6 +4101,9 @@ def test_list_backup_channels_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup_channel.BackupChannel) for i in results) @@ -4188,6 +4196,8 @@ async def test_list_backup_channels_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5719,6 +5729,9 @@ def test_list_backup_plan_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5813,6 +5826,8 @@ async def test_list_backup_plan_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6964,6 +6979,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup.Backup) for i in results) @@ -7052,6 +7070,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8559,6 +8579,9 @@ def test_list_volume_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, volume.VolumeBackup) for i in results) @@ -8651,6 +8674,8 @@ async def test_list_volume_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9857,6 +9882,9 @@ def test_list_restore_plans_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, restore_plan.RestorePlan) for i in results) @@ -9949,6 +9977,8 @@ async def test_list_restore_plans_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11839,6 +11869,9 @@ def test_list_restore_channels_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, restore_channel.RestoreChannel) for i in results) @@ -11931,6 +11964,8 @@ async def test_list_restore_channels_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13462,6 +13497,9 @@ def test_list_restore_plan_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -13556,6 +13594,8 @@ async def test_list_restore_plan_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14707,6 +14747,9 @@ def test_list_restores_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, restore.Restore) for i in results) @@ -14795,6 +14838,8 @@ async def test_list_restores_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16277,6 +16322,9 @@ def test_list_volume_restores_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, volume.VolumeRestore) for i in results) @@ -16369,6 +16417,8 @@ async def test_list_volume_restores_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17600,6 +17650,9 @@ def test_list_backup_plans_rest_pager(transport: str = "rest"): pager = client.list_backup_plans(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup_plan.BackupPlan) for i in results) @@ -18611,6 +18664,9 @@ def test_list_backup_channels_rest_pager(transport: str = "rest"): pager = client.list_backup_channels(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup_channel.BackupChannel) for i in results) @@ -19449,6 +19505,9 @@ def test_list_backup_plan_bindings_rest_pager(transport: str = "rest"): pager = client.list_backup_plan_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -20082,6 +20141,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup.Backup) for i in results) @@ -20899,6 +20961,9 @@ def test_list_volume_backups_rest_pager(transport: str = "rest"): pager = client.list_volume_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, volume.VolumeBackup) for i in results) @@ -21555,6 +21620,9 @@ def test_list_restore_plans_rest_pager(transport: str = "rest"): pager = client.list_restore_plans(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, restore_plan.RestorePlan) for i in results) @@ -22582,6 +22650,9 @@ def test_list_restore_channels_rest_pager(transport: str = "rest"): pager = client.list_restore_channels(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, restore_channel.RestoreChannel) for i in results) @@ -23407,6 +23478,9 @@ def test_list_restore_plan_bindings_rest_pager(transport: str = "rest"): pager = client.list_restore_plan_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -24062,6 +24136,9 @@ def test_list_restores_rest_pager(transport: str = "rest"): pager = client.list_restores(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, restore.Restore) for i in results) @@ -24883,6 +24960,9 @@ def test_list_volume_restores_rest_pager(transport: str = "rest"): pager = client.list_volume_restores(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, volume.VolumeRestore) for i in results) diff --git a/packages/google-cloud-gke-connect-gateway/noxfile.py b/packages/google-cloud-gke-connect-gateway/noxfile.py index 0154a64bc1b5..ce1e3d6b681b 100644 --- a/packages/google-cloud-gke-connect-gateway/noxfile.py +++ b/packages/google-cloud-gke-connect-gateway/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-gke-connect-gateway/testing/constraints-3.15.txt b/packages/google-cloud-gke-connect-gateway/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-gke-connect-gateway/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-gke-hub/noxfile.py b/packages/google-cloud-gke-hub/noxfile.py index a5124d5be99a..03edbe83ad95 100644 --- a/packages/google-cloud-gke-hub/noxfile.py +++ b/packages/google-cloud-gke-hub/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-gke-hub/testing/constraints-3.15.txt b/packages/google-cloud-gke-hub/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-gke-hub/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-gke-hub/tests/unit/gapic/gkehub_v1/test_gke_hub.py b/packages/google-cloud-gke-hub/tests/unit/gapic/gkehub_v1/test_gke_hub.py index 7175d8a88819..b7182d766a7a 100644 --- a/packages/google-cloud-gke-hub/tests/unit/gapic/gkehub_v1/test_gke_hub.py +++ b/packages/google-cloud-gke-hub/tests/unit/gapic/gkehub_v1/test_gke_hub.py @@ -1646,6 +1646,9 @@ def test_list_memberships_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, membership.Membership) for i in results) @@ -1734,6 +1737,8 @@ async def test_list_memberships_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2191,6 +2196,9 @@ def test_list_bound_memberships_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, membership.Membership) for i in results) @@ -2283,6 +2291,8 @@ async def test_list_bound_memberships_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2717,6 +2727,9 @@ def test_list_features_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, feature.Feature) for i in results) @@ -2805,6 +2818,8 @@ async def test_list_features_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7654,6 +7669,9 @@ def test_list_fleets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.Fleet) for i in results) @@ -7742,6 +7760,8 @@ async def test_list_fleets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9614,6 +9634,9 @@ def test_list_scope_namespaces_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.Namespace) for i in results) @@ -9706,6 +9729,8 @@ async def test_list_scope_namespaces_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11586,6 +11611,9 @@ def test_list_scope_rbac_role_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.RBACRoleBinding) for i in results) @@ -11678,6 +11706,8 @@ async def test_list_scope_rbac_role_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13444,6 +13474,9 @@ def test_list_scopes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.Scope) for i in results) @@ -13532,6 +13565,8 @@ async def test_list_scopes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13983,6 +14018,9 @@ def test_list_permitted_scopes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.Scope) for i in results) @@ -14075,6 +14113,8 @@ async def test_list_permitted_scopes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15961,6 +16001,9 @@ def test_list_membership_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.MembershipBinding) for i in results) @@ -16053,6 +16096,8 @@ async def test_list_membership_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17937,6 +17982,9 @@ def test_list_membership_rbac_role_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.RBACRoleBinding) for i in results) @@ -18029,6 +18077,8 @@ async def test_list_membership_rbac_role_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18600,6 +18650,9 @@ def test_list_memberships_rest_pager(transport: str = "rest"): pager = client.list_memberships(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, membership.Membership) for i in results) @@ -18867,6 +18920,9 @@ def test_list_bound_memberships_rest_pager(transport: str = "rest"): pager = client.list_bound_memberships(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, membership.Membership) for i in results) @@ -19021,6 +19077,9 @@ def test_list_features_rest_pager(transport: str = "rest"): pager = client.list_features(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, feature.Feature) for i in results) @@ -21348,6 +21407,9 @@ def test_list_fleets_rest_pager(transport: str = "rest"): pager = client.list_fleets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.Fleet) for i in results) @@ -22382,6 +22444,9 @@ def test_list_scope_namespaces_rest_pager(transport: str = "rest"): pager = client.list_scope_namespaces(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.Namespace) for i in results) @@ -23425,6 +23490,9 @@ def test_list_scope_rbac_role_bindings_rest_pager(transport: str = "rest"): pager = client.list_scope_rbac_role_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.RBACRoleBinding) for i in results) @@ -24413,6 +24481,9 @@ def test_list_scopes_rest_pager(transport: str = "rest"): pager = client.list_scopes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.Scope) for i in results) @@ -24674,6 +24745,9 @@ def test_list_permitted_scopes_rest_pager(transport: str = "rest"): pager = client.list_permitted_scopes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.Scope) for i in results) @@ -25720,6 +25794,9 @@ def test_list_membership_bindings_rest_pager(transport: str = "rest"): pager = client.list_membership_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.MembershipBinding) for i in results) @@ -26781,6 +26858,9 @@ def test_list_membership_rbac_role_bindings_rest_pager(transport: str = "rest"): pager = client.list_membership_rbac_role_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, fleet.RBACRoleBinding) for i in results) diff --git a/packages/google-cloud-gke-hub/tests/unit/gapic/gkehub_v1beta1/test_gke_hub_membership_service.py b/packages/google-cloud-gke-hub/tests/unit/gapic/gkehub_v1beta1/test_gke_hub_membership_service.py index 491a9c7425b8..a199f9811299 100644 --- a/packages/google-cloud-gke-hub/tests/unit/gapic/gkehub_v1beta1/test_gke_hub_membership_service.py +++ b/packages/google-cloud-gke-hub/tests/unit/gapic/gkehub_v1beta1/test_gke_hub_membership_service.py @@ -1789,6 +1789,9 @@ def test_list_memberships_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, membership.Membership) for i in results) @@ -1877,6 +1880,8 @@ async def test_list_memberships_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4387,6 +4392,9 @@ def test_list_memberships_rest_pager(transport: str = "rest"): pager = client.list_memberships(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, membership.Membership) for i in results) diff --git a/packages/google-cloud-gke-multicloud/noxfile.py b/packages/google-cloud-gke-multicloud/noxfile.py index 6dbc9a81300b..5aebd45925f1 100644 --- a/packages/google-cloud-gke-multicloud/noxfile.py +++ b/packages/google-cloud-gke-multicloud/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-gke-multicloud/testing/constraints-3.15.txt b/packages/google-cloud-gke-multicloud/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-gke-multicloud/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-gke-multicloud/tests/unit/gapic/gke_multicloud_v1/test_attached_clusters.py b/packages/google-cloud-gke-multicloud/tests/unit/gapic/gke_multicloud_v1/test_attached_clusters.py index 68c140bae149..ad73fef5b9ec 100644 --- a/packages/google-cloud-gke-multicloud/tests/unit/gapic/gke_multicloud_v1/test_attached_clusters.py +++ b/packages/google-cloud-gke-multicloud/tests/unit/gapic/gke_multicloud_v1/test_attached_clusters.py @@ -3234,6 +3234,9 @@ def test_list_attached_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, attached_resources.AttachedCluster) for i in results) @@ -3326,6 +3329,8 @@ async def test_list_attached_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5806,6 +5811,9 @@ def test_list_attached_clusters_rest_pager(transport: str = "rest"): pager = client.list_attached_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, attached_resources.AttachedCluster) for i in results) diff --git a/packages/google-cloud-gke-multicloud/tests/unit/gapic/gke_multicloud_v1/test_aws_clusters.py b/packages/google-cloud-gke-multicloud/tests/unit/gapic/gke_multicloud_v1/test_aws_clusters.py index b13dcc0bf8ff..192bff46be9d 100644 --- a/packages/google-cloud-gke-multicloud/tests/unit/gapic/gke_multicloud_v1/test_aws_clusters.py +++ b/packages/google-cloud-gke-multicloud/tests/unit/gapic/gke_multicloud_v1/test_aws_clusters.py @@ -2766,6 +2766,9 @@ def test_list_aws_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, aws_resources.AwsCluster) for i in results) @@ -2858,6 +2861,8 @@ async def test_list_aws_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5637,6 +5642,9 @@ def test_list_aws_node_pools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, aws_resources.AwsNodePool) for i in results) @@ -5729,6 +5737,8 @@ async def test_list_aws_node_pools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7878,6 +7888,9 @@ def test_list_aws_clusters_rest_pager(transport: str = "rest"): pager = client.list_aws_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, aws_resources.AwsCluster) for i in results) @@ -9414,6 +9427,9 @@ def test_list_aws_node_pools_rest_pager(transport: str = "rest"): pager = client.list_aws_node_pools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, aws_resources.AwsNodePool) for i in results) diff --git a/packages/google-cloud-gke-multicloud/tests/unit/gapic/gke_multicloud_v1/test_azure_clusters.py b/packages/google-cloud-gke-multicloud/tests/unit/gapic/gke_multicloud_v1/test_azure_clusters.py index c859ee3f8243..08a80ff1329d 100644 --- a/packages/google-cloud-gke-multicloud/tests/unit/gapic/gke_multicloud_v1/test_azure_clusters.py +++ b/packages/google-cloud-gke-multicloud/tests/unit/gapic/gke_multicloud_v1/test_azure_clusters.py @@ -2440,6 +2440,9 @@ def test_list_azure_clients_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, azure_resources.AzureClient) for i in results) @@ -2532,6 +2535,8 @@ async def test_list_azure_clients_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4432,6 +4437,9 @@ def test_list_azure_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, azure_resources.AzureCluster) for i in results) @@ -4524,6 +4532,8 @@ async def test_list_azure_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6967,6 +6977,9 @@ def test_list_azure_node_pools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, azure_resources.AzureNodePool) for i in results) @@ -7059,6 +7072,8 @@ async def test_list_azure_node_pools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9182,6 +9197,9 @@ def test_list_azure_clients_rest_pager(transport: str = "rest"): pager = client.list_azure_clients(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, azure_resources.AzureClient) for i in results) @@ -10244,6 +10262,9 @@ def test_list_azure_clusters_rest_pager(transport: str = "rest"): pager = client.list_azure_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, azure_resources.AzureCluster) for i in results) @@ -11600,6 +11621,9 @@ def test_list_azure_node_pools_rest_pager(transport: str = "rest"): pager = client.list_azure_node_pools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, azure_resources.AzureNodePool) for i in results) diff --git a/packages/google-cloud-gkerecommender/noxfile.py b/packages/google-cloud-gkerecommender/noxfile.py index b11b2a44dfee..951a0bb80db1 100644 --- a/packages/google-cloud-gkerecommender/noxfile.py +++ b/packages/google-cloud-gkerecommender/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-gkerecommender/testing/constraints-3.15.txt b/packages/google-cloud-gkerecommender/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-gkerecommender/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-gkerecommender/tests/unit/gapic/gkerecommender_v1/test_gke_inference_quickstart.py b/packages/google-cloud-gkerecommender/tests/unit/gapic/gkerecommender_v1/test_gke_inference_quickstart.py index df0993f0ce29..75ba12364dd0 100644 --- a/packages/google-cloud-gkerecommender/tests/unit/gapic/gkerecommender_v1/test_gke_inference_quickstart.py +++ b/packages/google-cloud-gkerecommender/tests/unit/gapic/gkerecommender_v1/test_gke_inference_quickstart.py @@ -1620,6 +1620,9 @@ def test_fetch_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -1708,6 +1711,8 @@ async def test_fetch_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2006,6 +2011,9 @@ def test_fetch_model_servers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -2098,6 +2106,8 @@ async def test_fetch_model_servers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2405,6 +2415,9 @@ def test_fetch_model_server_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -2497,6 +2510,8 @@ async def test_fetch_model_server_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2789,6 +2804,9 @@ def test_fetch_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gkerecommender.Profile) for i in results) @@ -2877,6 +2895,8 @@ async def test_fetch_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3410,6 +3430,9 @@ def test_fetch_models_rest_pager(transport: str = "rest"): pager = client.fetch_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -3623,6 +3646,9 @@ def test_fetch_model_servers_rest_pager(transport: str = "rest"): pager = client.fetch_model_servers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -3857,6 +3883,9 @@ def test_fetch_model_server_versions_rest_pager(transport: str = "rest"): pager = client.fetch_model_server_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -3956,6 +3985,9 @@ def test_fetch_profiles_rest_pager(transport: str = "rest"): pager = client.fetch_profiles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gkerecommender.Profile) for i in results) diff --git a/packages/google-cloud-gsuiteaddons/noxfile.py b/packages/google-cloud-gsuiteaddons/noxfile.py index da154872a469..5ddf7533f712 100644 --- a/packages/google-cloud-gsuiteaddons/noxfile.py +++ b/packages/google-cloud-gsuiteaddons/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-gsuiteaddons/testing/constraints-3.15.txt b/packages/google-cloud-gsuiteaddons/testing/constraints-3.15.txt new file mode 100644 index 000000000000..04f0ffb57ea2 --- /dev/null +++ b/packages/google-cloud-gsuiteaddons/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-apps-script-type>=0 diff --git a/packages/google-cloud-gsuiteaddons/tests/unit/gapic/gsuiteaddons_v1/test_g_suite_add_ons.py b/packages/google-cloud-gsuiteaddons/tests/unit/gapic/gsuiteaddons_v1/test_g_suite_add_ons.py index ecdc15b48b11..1d66f3d91236 100644 --- a/packages/google-cloud-gsuiteaddons/tests/unit/gapic/gsuiteaddons_v1/test_g_suite_add_ons.py +++ b/packages/google-cloud-gsuiteaddons/tests/unit/gapic/gsuiteaddons_v1/test_g_suite_add_ons.py @@ -3086,6 +3086,9 @@ def test_list_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gsuiteaddons.Deployment) for i in results) @@ -3174,6 +3177,8 @@ async def test_list_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5548,6 +5553,9 @@ def test_list_deployments_rest_pager(transport: str = "rest"): pager = client.list_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gsuiteaddons.Deployment) for i in results) diff --git a/packages/google-cloud-hypercomputecluster/noxfile.py b/packages/google-cloud-hypercomputecluster/noxfile.py index 0a5b009a3092..6b43f19f3bd3 100644 --- a/packages/google-cloud-hypercomputecluster/noxfile.py +++ b/packages/google-cloud-hypercomputecluster/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-hypercomputecluster/testing/constraints-3.15.txt b/packages/google-cloud-hypercomputecluster/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-hypercomputecluster/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-hypercomputecluster/tests/unit/gapic/hypercomputecluster_v1/test_hypercompute_cluster.py b/packages/google-cloud-hypercomputecluster/tests/unit/gapic/hypercomputecluster_v1/test_hypercompute_cluster.py index c75ced1f1f90..bb8029528704 100644 --- a/packages/google-cloud-hypercomputecluster/tests/unit/gapic/hypercomputecluster_v1/test_hypercompute_cluster.py +++ b/packages/google-cloud-hypercomputecluster/tests/unit/gapic/hypercomputecluster_v1/test_hypercompute_cluster.py @@ -1779,6 +1779,9 @@ def test_list_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hypercompute_cluster.Cluster) for i in results) @@ -1867,6 +1870,8 @@ async def test_list_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3514,6 +3519,9 @@ def test_list_clusters_rest_pager(transport: str = "rest"): pager = client.list_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hypercompute_cluster.Cluster) for i in results) diff --git a/packages/google-cloud-hypercomputecluster/tests/unit/gapic/hypercomputecluster_v1beta/test_hypercompute_cluster.py b/packages/google-cloud-hypercomputecluster/tests/unit/gapic/hypercomputecluster_v1beta/test_hypercompute_cluster.py index 61f8b04ca6a2..7864803f4d46 100644 --- a/packages/google-cloud-hypercomputecluster/tests/unit/gapic/hypercomputecluster_v1beta/test_hypercompute_cluster.py +++ b/packages/google-cloud-hypercomputecluster/tests/unit/gapic/hypercomputecluster_v1beta/test_hypercompute_cluster.py @@ -1779,6 +1779,9 @@ def test_list_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hypercompute_cluster.Cluster) for i in results) @@ -1867,6 +1870,8 @@ async def test_list_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3515,6 +3520,9 @@ def test_list_clusters_rest_pager(transport: str = "rest"): pager = client.list_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hypercompute_cluster.Cluster) for i in results) diff --git a/packages/google-cloud-iam-logging/noxfile.py b/packages/google-cloud-iam-logging/noxfile.py index eb1274b44083..a2ffbcbc3b4f 100644 --- a/packages/google-cloud-iam-logging/noxfile.py +++ b/packages/google-cloud-iam-logging/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-iam-logging/testing/constraints-3.15.txt b/packages/google-cloud-iam-logging/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-iam-logging/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-iam/noxfile.py b/packages/google-cloud-iam/noxfile.py index 60be3c6e4e18..30c542abf139 100644 --- a/packages/google-cloud-iam/noxfile.py +++ b/packages/google-cloud-iam/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-iam/testing/constraints-3.15.txt b/packages/google-cloud-iam/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-iam/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-iam/tests/unit/gapic/iam_admin_v1/test_iam.py b/packages/google-cloud-iam/tests/unit/gapic/iam_admin_v1/test_iam.py index bea1199eaa25..75c1408877cc 100644 --- a/packages/google-cloud-iam/tests/unit/gapic/iam_admin_v1/test_iam.py +++ b/packages/google-cloud-iam/tests/unit/gapic/iam_admin_v1/test_iam.py @@ -1607,6 +1607,9 @@ def test_list_service_accounts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, iam.ServiceAccount) for i in results) @@ -1699,6 +1702,8 @@ async def test_list_service_accounts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8668,6 +8673,9 @@ def test_query_grantable_roles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, iam.Role) for i in results) @@ -8760,6 +8768,8 @@ async def test_query_grantable_roles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9042,6 +9052,9 @@ def test_list_roles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, iam.Role) for i in results) @@ -9130,6 +9143,8 @@ async def test_list_roles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10749,6 +10764,9 @@ def test_query_testable_permissions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, iam.Permission) for i in results) @@ -10841,6 +10859,8 @@ async def test_query_testable_permissions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-iam/tests/unit/gapic/iam_v2/test_policies.py b/packages/google-cloud-iam/tests/unit/gapic/iam_v2/test_policies.py index 914107150922..a8692a1ffe7b 100644 --- a/packages/google-cloud-iam/tests/unit/gapic/iam_v2/test_policies.py +++ b/packages/google-cloud-iam/tests/unit/gapic/iam_v2/test_policies.py @@ -1647,6 +1647,9 @@ def test_list_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, policy.Policy) for i in results) @@ -1735,6 +1738,8 @@ async def test_list_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3289,6 +3294,9 @@ def test_list_policies_rest_pager(transport: str = "rest"): pager = client.list_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, policy.Policy) for i in results) diff --git a/packages/google-cloud-iam/tests/unit/gapic/iam_v2beta/test_policies.py b/packages/google-cloud-iam/tests/unit/gapic/iam_v2beta/test_policies.py index 3486e59a301f..cf94cc69f1ba 100644 --- a/packages/google-cloud-iam/tests/unit/gapic/iam_v2beta/test_policies.py +++ b/packages/google-cloud-iam/tests/unit/gapic/iam_v2beta/test_policies.py @@ -1627,6 +1627,9 @@ def test_list_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, policy.Policy) for i in results) @@ -1715,6 +1718,8 @@ async def test_list_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-iam/tests/unit/gapic/iam_v3/test_policy_bindings.py b/packages/google-cloud-iam/tests/unit/gapic/iam_v3/test_policy_bindings.py index c9fa5037d148..ffe7b92964f8 100644 --- a/packages/google-cloud-iam/tests/unit/gapic/iam_v3/test_policy_bindings.py +++ b/packages/google-cloud-iam/tests/unit/gapic/iam_v3/test_policy_bindings.py @@ -3185,6 +3185,9 @@ def test_list_policy_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3279,6 +3282,8 @@ async def test_list_policy_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3748,6 +3753,9 @@ def test_search_target_policy_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3842,6 +3850,8 @@ async def test_search_target_policy_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4962,6 +4972,9 @@ def test_list_policy_bindings_rest_pager(transport: str = "rest"): pager = client.list_policy_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5256,6 +5269,9 @@ def test_search_target_policy_bindings_rest_pager(transport: str = "rest"): pager = client.search_target_policy_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-iam/tests/unit/gapic/iam_v3/test_principal_access_boundary_policies.py b/packages/google-cloud-iam/tests/unit/gapic/iam_v3/test_principal_access_boundary_policies.py index 69e40433dbbb..2f0c68f95911 100644 --- a/packages/google-cloud-iam/tests/unit/gapic/iam_v3/test_principal_access_boundary_policies.py +++ b/packages/google-cloud-iam/tests/unit/gapic/iam_v3/test_principal_access_boundary_policies.py @@ -3351,6 +3351,9 @@ def test_list_principal_access_boundary_policies_pager(transport_name: str = "gr assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3449,6 +3452,8 @@ async def test_list_principal_access_boundary_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3928,6 +3933,9 @@ def test_search_principal_access_boundary_policy_bindings_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4027,6 +4035,8 @@ async def test_search_principal_access_boundary_policy_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5213,6 +5223,9 @@ def test_list_principal_access_boundary_policies_rest_pager(transport: str = "re pager = client.list_principal_access_boundary_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5505,6 +5518,9 @@ def test_search_principal_access_boundary_policy_bindings_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-iam/tests/unit/gapic/iam_v3beta/test_access_policies.py b/packages/google-cloud-iam/tests/unit/gapic/iam_v3beta/test_access_policies.py index c306af2b168b..88e861597b64 100644 --- a/packages/google-cloud-iam/tests/unit/gapic/iam_v3beta/test_access_policies.py +++ b/packages/google-cloud-iam/tests/unit/gapic/iam_v3beta/test_access_policies.py @@ -3064,6 +3064,9 @@ def test_list_access_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, access_policy_resources.AccessPolicy) for i in results) @@ -3156,6 +3159,8 @@ async def test_list_access_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3613,6 +3618,9 @@ def test_search_access_policy_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3707,6 +3715,8 @@ async def test_search_access_policy_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4747,6 +4757,9 @@ def test_list_access_policies_rest_pager(transport: str = "rest"): pager = client.list_access_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, access_policy_resources.AccessPolicy) for i in results) @@ -5021,6 +5034,9 @@ def test_search_access_policy_bindings_rest_pager(transport: str = "rest"): pager = client.search_access_policy_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-iam/tests/unit/gapic/iam_v3beta/test_policy_bindings.py b/packages/google-cloud-iam/tests/unit/gapic/iam_v3beta/test_policy_bindings.py index 6153a72437d6..8a837c56edfb 100644 --- a/packages/google-cloud-iam/tests/unit/gapic/iam_v3beta/test_policy_bindings.py +++ b/packages/google-cloud-iam/tests/unit/gapic/iam_v3beta/test_policy_bindings.py @@ -3185,6 +3185,9 @@ def test_list_policy_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3279,6 +3282,8 @@ async def test_list_policy_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3750,6 +3755,9 @@ def test_search_target_policy_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3844,6 +3852,8 @@ async def test_search_target_policy_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4964,6 +4974,9 @@ def test_list_policy_bindings_rest_pager(transport: str = "rest"): pager = client.list_policy_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5260,6 +5273,9 @@ def test_search_target_policy_bindings_rest_pager(transport: str = "rest"): pager = client.search_target_policy_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-iam/tests/unit/gapic/iam_v3beta/test_principal_access_boundary_policies.py b/packages/google-cloud-iam/tests/unit/gapic/iam_v3beta/test_principal_access_boundary_policies.py index a7d3858bd6e2..df90577d902c 100644 --- a/packages/google-cloud-iam/tests/unit/gapic/iam_v3beta/test_principal_access_boundary_policies.py +++ b/packages/google-cloud-iam/tests/unit/gapic/iam_v3beta/test_principal_access_boundary_policies.py @@ -3351,6 +3351,9 @@ def test_list_principal_access_boundary_policies_pager(transport_name: str = "gr assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3449,6 +3452,8 @@ async def test_list_principal_access_boundary_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3928,6 +3933,9 @@ def test_search_principal_access_boundary_policy_bindings_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4027,6 +4035,8 @@ async def test_search_principal_access_boundary_policy_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5213,6 +5223,9 @@ def test_list_principal_access_boundary_policies_rest_pager(transport: str = "re pager = client.list_principal_access_boundary_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5505,6 +5518,9 @@ def test_search_principal_access_boundary_policy_bindings_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-iamconnectorcredentials/noxfile.py b/packages/google-cloud-iamconnectorcredentials/noxfile.py index 1fff9f2e6f1e..971201f75bd2 100644 --- a/packages/google-cloud-iamconnectorcredentials/noxfile.py +++ b/packages/google-cloud-iamconnectorcredentials/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-iamconnectorcredentials/testing/constraints-3.15.txt b/packages/google-cloud-iamconnectorcredentials/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-iamconnectorcredentials/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-iap/noxfile.py b/packages/google-cloud-iap/noxfile.py index 239436d95342..0da372eeda7e 100644 --- a/packages/google-cloud-iap/noxfile.py +++ b/packages/google-cloud-iap/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-iap/testing/constraints-3.15.txt b/packages/google-cloud-iap/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-iap/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-iap/tests/unit/gapic/iap_v1/test_identity_aware_proxy_admin_service.py b/packages/google-cloud-iap/tests/unit/gapic/iap_v1/test_identity_aware_proxy_admin_service.py index 335d0ddee7da..0e44717b6d50 100644 --- a/packages/google-cloud-iap/tests/unit/gapic/iap_v1/test_identity_aware_proxy_admin_service.py +++ b/packages/google-cloud-iap/tests/unit/gapic/iap_v1/test_identity_aware_proxy_admin_service.py @@ -3400,6 +3400,9 @@ def test_list_tunnel_dest_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.TunnelDestGroup) for i in results) @@ -3492,6 +3495,8 @@ async def test_list_tunnel_dest_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5996,6 +6001,9 @@ def test_list_tunnel_dest_groups_rest_pager(transport: str = "rest"): pager = client.list_tunnel_dest_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.TunnelDestGroup) for i in results) diff --git a/packages/google-cloud-iap/tests/unit/gapic/iap_v1/test_identity_aware_proxy_o_auth_service.py b/packages/google-cloud-iap/tests/unit/gapic/iap_v1/test_identity_aware_proxy_o_auth_service.py index 61fd8b9d0fa6..92172769b2af 100644 --- a/packages/google-cloud-iap/tests/unit/gapic/iap_v1/test_identity_aware_proxy_o_auth_service.py +++ b/packages/google-cloud-iap/tests/unit/gapic/iap_v1/test_identity_aware_proxy_o_auth_service.py @@ -2767,6 +2767,9 @@ def test_list_identity_aware_proxy_clients_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.IdentityAwareProxyClient) for i in results) @@ -2859,6 +2862,8 @@ async def test_list_identity_aware_proxy_clients_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4398,6 +4403,9 @@ def test_list_identity_aware_proxy_clients_rest_pager(transport: str = "rest"): pager = client.list_identity_aware_proxy_clients(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.IdentityAwareProxyClient) for i in results) diff --git a/packages/google-cloud-ids/noxfile.py b/packages/google-cloud-ids/noxfile.py index 039b77ebbb70..27c5d6205941 100644 --- a/packages/google-cloud-ids/noxfile.py +++ b/packages/google-cloud-ids/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-ids/testing/constraints-3.15.txt b/packages/google-cloud-ids/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-ids/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-ids/tests/unit/gapic/ids_v1/test_ids.py b/packages/google-cloud-ids/tests/unit/gapic/ids_v1/test_ids.py index cc65eb80b84a..72111882ebd8 100644 --- a/packages/google-cloud-ids/tests/unit/gapic/ids_v1/test_ids.py +++ b/packages/google-cloud-ids/tests/unit/gapic/ids_v1/test_ids.py @@ -1613,6 +1613,9 @@ def test_list_endpoints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, ids.Endpoint) for i in results) @@ -1701,6 +1704,8 @@ async def test_list_endpoints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3030,6 +3035,9 @@ def test_list_endpoints_rest_pager(transport: str = "rest"): pager = client.list_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, ids.Endpoint) for i in results) diff --git a/packages/google-cloud-kms-inventory/noxfile.py b/packages/google-cloud-kms-inventory/noxfile.py index beb750ab1711..c1a8d43b55fe 100644 --- a/packages/google-cloud-kms-inventory/noxfile.py +++ b/packages/google-cloud-kms-inventory/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-kms-inventory/testing/constraints-3.15.txt b/packages/google-cloud-kms-inventory/testing/constraints-3.15.txt new file mode 100644 index 000000000000..8573f096b0fa --- /dev/null +++ b/packages/google-cloud-kms-inventory/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-cloud-kms>=3 diff --git a/packages/google-cloud-kms-inventory/tests/unit/gapic/kms_inventory_v1/test_key_dashboard_service.py b/packages/google-cloud-kms-inventory/tests/unit/gapic/kms_inventory_v1/test_key_dashboard_service.py index 5ccb6b2397b0..79e2e4dbd243 100644 --- a/packages/google-cloud-kms-inventory/tests/unit/gapic/kms_inventory_v1/test_key_dashboard_service.py +++ b/packages/google-cloud-kms-inventory/tests/unit/gapic/kms_inventory_v1/test_key_dashboard_service.py @@ -1761,6 +1761,9 @@ def test_list_crypto_keys_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CryptoKey) for i in results) @@ -1849,6 +1852,8 @@ async def test_list_crypto_keys_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2149,6 +2154,9 @@ def test_list_crypto_keys_rest_pager(transport: str = "rest"): pager = client.list_crypto_keys(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CryptoKey) for i in results) diff --git a/packages/google-cloud-kms-inventory/tests/unit/gapic/kms_inventory_v1/test_key_tracking_service.py b/packages/google-cloud-kms-inventory/tests/unit/gapic/kms_inventory_v1/test_key_tracking_service.py index 1414b70e45a7..4be44e0f5e9d 100644 --- a/packages/google-cloud-kms-inventory/tests/unit/gapic/kms_inventory_v1/test_key_tracking_service.py +++ b/packages/google-cloud-kms-inventory/tests/unit/gapic/kms_inventory_v1/test_key_tracking_service.py @@ -2130,6 +2130,9 @@ def test_search_protected_resources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2224,6 +2227,8 @@ async def test_search_protected_resources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2753,6 +2758,9 @@ def test_search_protected_resources_rest_pager(transport: str = "rest"): pager = client.search_protected_resources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-kms/noxfile.py b/packages/google-cloud-kms/noxfile.py index 0468f42a5bc4..8a9dc3069c45 100644 --- a/packages/google-cloud-kms/noxfile.py +++ b/packages/google-cloud-kms/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-kms/testing/constraints-3.15.txt b/packages/google-cloud-kms/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-kms/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_autokey.py b/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_autokey.py index 915a54d6646c..820927ef29e8 100644 --- a/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_autokey.py +++ b/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_autokey.py @@ -2340,6 +2340,9 @@ def test_list_key_handles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, autokey.KeyHandle) for i in results) @@ -2428,6 +2431,8 @@ async def test_list_key_handles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3099,6 +3104,9 @@ def test_list_key_handles_rest_pager(transport: str = "rest"): pager = client.list_key_handles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, autokey.KeyHandle) for i in results) diff --git a/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_ekm_service.py b/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_ekm_service.py index ed31668490a4..25f3475262ac 100644 --- a/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_ekm_service.py +++ b/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_ekm_service.py @@ -1698,6 +1698,9 @@ def test_list_ekm_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, ekm_service.EkmConnection) for i in results) @@ -1790,6 +1793,8 @@ async def test_list_ekm_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4228,6 +4233,9 @@ def test_list_ekm_connections_rest_pager(transport: str = "rest"): pager = client.list_ekm_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, ekm_service.EkmConnection) for i in results) diff --git a/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_hsm_management.py b/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_hsm_management.py index ade38c253eb0..8e4e86f55505 100644 --- a/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_hsm_management.py +++ b/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_hsm_management.py @@ -1743,6 +1743,9 @@ def test_list_single_tenant_hsm_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1837,6 +1840,8 @@ async def test_list_single_tenant_hsm_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4534,6 +4539,9 @@ def test_list_single_tenant_hsm_instance_proposals_pager(transport_name: str = " assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4629,6 +4637,8 @@ async def test_list_single_tenant_hsm_instance_proposals_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5289,6 +5299,9 @@ def test_list_single_tenant_hsm_instances_rest_pager(transport: str = "rest"): pager = client.list_single_tenant_hsm_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6790,6 +6803,9 @@ def test_list_single_tenant_hsm_instance_proposals_rest_pager(transport: str = " pager = client.list_single_tenant_hsm_instance_proposals(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_key_management_service.py b/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_key_management_service.py index 4d20ac04502b..ce9e2e2fcbdf 100644 --- a/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_key_management_service.py +++ b/packages/google-cloud-kms/tests/unit/gapic/kms_v1/test_key_management_service.py @@ -1785,6 +1785,9 @@ def test_list_key_rings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.KeyRing) for i in results) @@ -1873,6 +1876,8 @@ async def test_list_key_rings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2311,6 +2316,9 @@ def test_list_crypto_keys_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CryptoKey) for i in results) @@ -2399,6 +2407,8 @@ async def test_list_crypto_keys_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2860,6 +2870,9 @@ def test_list_crypto_key_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CryptoKeyVersion) for i in results) @@ -2952,6 +2965,8 @@ async def test_list_crypto_key_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3392,6 +3407,9 @@ def test_list_import_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ImportJob) for i in results) @@ -3480,6 +3498,8 @@ async def test_list_import_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3935,6 +3955,9 @@ def test_list_retired_resources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.RetiredResource) for i in results) @@ -4027,6 +4050,8 @@ async def test_list_retired_resources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14079,6 +14104,9 @@ def test_list_key_rings_rest_pager(transport: str = "rest"): pager = client.list_key_rings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.KeyRing) for i in results) @@ -14345,6 +14373,9 @@ def test_list_crypto_keys_rest_pager(transport: str = "rest"): pager = client.list_crypto_keys(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CryptoKey) for i in results) @@ -14616,6 +14647,9 @@ def test_list_crypto_key_versions_rest_pager(transport: str = "rest"): pager = client.list_crypto_key_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CryptoKeyVersion) for i in results) @@ -14880,6 +14914,9 @@ def test_list_import_jobs_rest_pager(transport: str = "rest"): pager = client.list_import_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ImportJob) for i in results) @@ -15141,6 +15178,9 @@ def test_list_retired_resources_rest_pager(transport: str = "rest"): pager = client.list_retired_resources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.RetiredResource) for i in results) diff --git a/packages/google-cloud-language/noxfile.py b/packages/google-cloud-language/noxfile.py index 7c8f31734518..93b9475f60dc 100644 --- a/packages/google-cloud-language/noxfile.py +++ b/packages/google-cloud-language/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-language/testing/constraints-3.15.txt b/packages/google-cloud-language/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-language/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-licensemanager/noxfile.py b/packages/google-cloud-licensemanager/noxfile.py index faab51c77445..6dae33bb3461 100644 --- a/packages/google-cloud-licensemanager/noxfile.py +++ b/packages/google-cloud-licensemanager/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-licensemanager/testing/constraints-3.15.txt b/packages/google-cloud-licensemanager/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-licensemanager/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-licensemanager/tests/unit/gapic/licensemanager_v1/test_license_manager.py b/packages/google-cloud-licensemanager/tests/unit/gapic/licensemanager_v1/test_license_manager.py index 495a823bd0bf..3212e57a839d 100644 --- a/packages/google-cloud-licensemanager/tests/unit/gapic/licensemanager_v1/test_license_manager.py +++ b/packages/google-cloud-licensemanager/tests/unit/gapic/licensemanager_v1/test_license_manager.py @@ -1735,6 +1735,9 @@ def test_list_configurations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, api_entities.Configuration) for i in results) @@ -1827,6 +1830,8 @@ async def test_list_configurations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3699,6 +3704,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, api_entities.Instance) for i in results) @@ -3787,6 +3795,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5640,6 +5650,9 @@ def test_aggregate_usage_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, api_entities.Usage) for i in results) @@ -5728,6 +5741,8 @@ async def test_aggregate_usage_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6164,6 +6179,9 @@ def test_list_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, api_entities.Product) for i in results) @@ -6252,6 +6270,8 @@ async def test_list_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6908,6 +6928,9 @@ def test_list_configurations_rest_pager(transport: str = "rest"): pager = client.list_configurations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, api_entities.Configuration) for i in results) @@ -7952,6 +7975,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, api_entities.Instance) for i in results) @@ -8997,6 +9023,9 @@ def test_aggregate_usage_rest_pager(transport: str = "rest"): pager = client.aggregate_usage(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, api_entities.Usage) for i in results) @@ -9256,6 +9285,9 @@ def test_list_products_rest_pager(transport: str = "rest"): pager = client.list_products(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, api_entities.Product) for i in results) diff --git a/packages/google-cloud-life-sciences/noxfile.py b/packages/google-cloud-life-sciences/noxfile.py index 21cf5135ed89..ff646ea7fee2 100644 --- a/packages/google-cloud-life-sciences/noxfile.py +++ b/packages/google-cloud-life-sciences/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-life-sciences/testing/constraints-3.15.txt b/packages/google-cloud-life-sciences/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-life-sciences/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-locationfinder/noxfile.py b/packages/google-cloud-locationfinder/noxfile.py index cc2ef53e813b..4091344b81bb 100644 --- a/packages/google-cloud-locationfinder/noxfile.py +++ b/packages/google-cloud-locationfinder/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-locationfinder/testing/constraints-3.15.txt b/packages/google-cloud-locationfinder/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-locationfinder/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-locationfinder/tests/unit/gapic/locationfinder_v1/test_cloud_location_finder.py b/packages/google-cloud-locationfinder/tests/unit/gapic/locationfinder_v1/test_cloud_location_finder.py index efbab18a4dc2..7a9caca42aa8 100644 --- a/packages/google-cloud-locationfinder/tests/unit/gapic/locationfinder_v1/test_cloud_location_finder.py +++ b/packages/google-cloud-locationfinder/tests/unit/gapic/locationfinder_v1/test_cloud_location_finder.py @@ -1783,6 +1783,9 @@ def test_list_cloud_locations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_location.CloudLocation) for i in results) @@ -1875,6 +1878,8 @@ async def test_list_cloud_locations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2734,6 +2739,9 @@ def test_search_cloud_locations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_location.CloudLocation) for i in results) @@ -2826,6 +2834,8 @@ async def test_search_cloud_locations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3134,6 +3144,9 @@ def test_list_cloud_locations_rest_pager(transport: str = "rest"): pager = client.list_cloud_locations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_location.CloudLocation) for i in results) @@ -3608,6 +3621,9 @@ def test_search_cloud_locations_rest_pager(transport: str = "rest"): pager = client.search_cloud_locations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_location.CloudLocation) for i in results) diff --git a/packages/google-cloud-logging/noxfile.py b/packages/google-cloud-logging/noxfile.py index f243539c2d21..1193d052179f 100644 --- a/packages/google-cloud-logging/noxfile.py +++ b/packages/google-cloud-logging/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -565,7 +573,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-logging/testing/constraints-3.15.txt b/packages/google-cloud-logging/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-logging/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-logging/tests/unit/gapic/logging_v2/test_config_service_v2.py b/packages/google-cloud-logging/tests/unit/gapic/logging_v2/test_config_service_v2.py index 20815de79211..007be7aa8030 100644 --- a/packages/google-cloud-logging/tests/unit/gapic/logging_v2/test_config_service_v2.py +++ b/packages/google-cloud-logging/tests/unit/gapic/logging_v2/test_config_service_v2.py @@ -1705,6 +1705,9 @@ def test_list_buckets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, logging_config.LogBucket) for i in results) @@ -1793,6 +1796,8 @@ async def test_list_buckets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4003,6 +4008,9 @@ def test_list_views_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, logging_config.LogView) for i in results) @@ -4091,6 +4099,8 @@ async def test_list_views_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5499,6 +5509,9 @@ def test_list_sinks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, logging_config.LogSink) for i in results) @@ -5587,6 +5600,8 @@ async def test_list_sinks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8087,6 +8102,9 @@ def test_list_links_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, logging_config.Link) for i in results) @@ -8175,6 +8193,8 @@ async def test_list_links_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8929,6 +8949,9 @@ def test_list_exclusions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, logging_config.LogExclusion) for i in results) @@ -9017,6 +9040,8 @@ async def test_list_exclusions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-logging/tests/unit/gapic/logging_v2/test_logging_service_v2.py b/packages/google-cloud-logging/tests/unit/gapic/logging_v2/test_logging_service_v2.py index 2fb4e10bbeca..dff4a308974e 100644 --- a/packages/google-cloud-logging/tests/unit/gapic/logging_v2/test_logging_service_v2.py +++ b/packages/google-cloud-logging/tests/unit/gapic/logging_v2/test_logging_service_v2.py @@ -2276,6 +2276,9 @@ def test_list_log_entries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, log_entry.LogEntry) for i in results) @@ -2364,6 +2367,8 @@ async def test_list_log_entries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2661,6 +2666,9 @@ def test_list_monitored_resource_descriptors_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2756,6 +2764,8 @@ async def test_list_monitored_resource_descriptors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3193,6 +3203,9 @@ def test_list_logs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -3281,6 +3294,8 @@ async def test_list_logs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-logging/tests/unit/gapic/logging_v2/test_metrics_service_v2.py b/packages/google-cloud-logging/tests/unit/gapic/logging_v2/test_metrics_service_v2.py index c682839cbe2c..c6c9e6d73296 100644 --- a/packages/google-cloud-logging/tests/unit/gapic/logging_v2/test_metrics_service_v2.py +++ b/packages/google-cloud-logging/tests/unit/gapic/logging_v2/test_metrics_service_v2.py @@ -1708,6 +1708,9 @@ def test_list_log_metrics_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, logging_metrics.LogMetric) for i in results) @@ -1796,6 +1799,8 @@ async def test_list_log_metrics_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-lustre/noxfile.py b/packages/google-cloud-lustre/noxfile.py index adedfe930707..9df8a6770830 100644 --- a/packages/google-cloud-lustre/noxfile.py +++ b/packages/google-cloud-lustre/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-lustre/testing/constraints-3.15.txt b/packages/google-cloud-lustre/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-lustre/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-lustre/tests/unit/gapic/lustre_v1/test_lustre.py b/packages/google-cloud-lustre/tests/unit/gapic/lustre_v1/test_lustre.py index bc49836a2a7e..201b5b731e97 100644 --- a/packages/google-cloud-lustre/tests/unit/gapic/lustre_v1/test_lustre.py +++ b/packages/google-cloud-lustre/tests/unit/gapic/lustre_v1/test_lustre.py @@ -1645,6 +1645,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) @@ -1733,6 +1736,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3976,6 +3981,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) diff --git a/packages/google-cloud-maintenance-api/noxfile.py b/packages/google-cloud-maintenance-api/noxfile.py index c454a3334353..3de039568523 100644 --- a/packages/google-cloud-maintenance-api/noxfile.py +++ b/packages/google-cloud-maintenance-api/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-maintenance-api/testing/constraints-3.15.txt b/packages/google-cloud-maintenance-api/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-maintenance-api/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-maintenance-api/tests/unit/gapic/maintenance_api_v1/test_maintenance.py b/packages/google-cloud-maintenance-api/tests/unit/gapic/maintenance_api_v1/test_maintenance.py index 7be5cef78777..e0755ff275a0 100644 --- a/packages/google-cloud-maintenance-api/tests/unit/gapic/maintenance_api_v1/test_maintenance.py +++ b/packages/google-cloud-maintenance-api/tests/unit/gapic/maintenance_api_v1/test_maintenance.py @@ -1693,6 +1693,9 @@ def test_summarize_maintenances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1787,6 +1790,8 @@ async def test_summarize_maintenances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2252,6 +2257,9 @@ def test_list_resource_maintenances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2346,6 +2354,8 @@ async def test_list_resource_maintenances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3025,6 +3035,9 @@ def test_summarize_maintenances_rest_pager(transport: str = "rest"): pager = client.summarize_maintenances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3297,6 +3310,9 @@ def test_list_resource_maintenances_rest_pager(transport: str = "rest"): pager = client.list_resource_maintenances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-maintenance-api/tests/unit/gapic/maintenance_api_v1beta/test_maintenance.py b/packages/google-cloud-maintenance-api/tests/unit/gapic/maintenance_api_v1beta/test_maintenance.py index 1ea6bcc684c4..81b64bc3603e 100644 --- a/packages/google-cloud-maintenance-api/tests/unit/gapic/maintenance_api_v1beta/test_maintenance.py +++ b/packages/google-cloud-maintenance-api/tests/unit/gapic/maintenance_api_v1beta/test_maintenance.py @@ -1693,6 +1693,9 @@ def test_summarize_maintenances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1787,6 +1790,8 @@ async def test_summarize_maintenances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2252,6 +2257,9 @@ def test_list_resource_maintenances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2346,6 +2354,8 @@ async def test_list_resource_maintenances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3025,6 +3035,9 @@ def test_summarize_maintenances_rest_pager(transport: str = "rest"): pager = client.summarize_maintenances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3297,6 +3310,9 @@ def test_list_resource_maintenances_rest_pager(transport: str = "rest"): pager = client.list_resource_maintenances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-managed-identities/noxfile.py b/packages/google-cloud-managed-identities/noxfile.py index a9c496f3b4cf..1888ce846dbd 100644 --- a/packages/google-cloud-managed-identities/noxfile.py +++ b/packages/google-cloud-managed-identities/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-managed-identities/testing/constraints-3.15.txt b/packages/google-cloud-managed-identities/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-managed-identities/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-managed-identities/tests/unit/gapic/managedidentities_v1/test_managed_identities_service.py b/packages/google-cloud-managed-identities/tests/unit/gapic/managedidentities_v1/test_managed_identities_service.py index 459845e2ae17..df805e85080a 100644 --- a/packages/google-cloud-managed-identities/tests/unit/gapic/managedidentities_v1/test_managed_identities_service.py +++ b/packages/google-cloud-managed-identities/tests/unit/gapic/managedidentities_v1/test_managed_identities_service.py @@ -2458,6 +2458,9 @@ def test_list_domains_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.Domain) for i in results) @@ -2546,6 +2549,8 @@ async def test_list_domains_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-managedkafka-schemaregistry/noxfile.py b/packages/google-cloud-managedkafka-schemaregistry/noxfile.py index 84a7800166e5..d6fddc481507 100644 --- a/packages/google-cloud-managedkafka-schemaregistry/noxfile.py +++ b/packages/google-cloud-managedkafka-schemaregistry/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-managedkafka-schemaregistry/testing/constraints-3.15.txt b/packages/google-cloud-managedkafka-schemaregistry/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-managedkafka-schemaregistry/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-managedkafka/noxfile.py b/packages/google-cloud-managedkafka/noxfile.py index c37d675428ee..4a4e9405faf7 100644 --- a/packages/google-cloud-managedkafka/noxfile.py +++ b/packages/google-cloud-managedkafka/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-managedkafka/testing/constraints-3.15.txt b/packages/google-cloud-managedkafka/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-managedkafka/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-managedkafka/tests/unit/gapic/managedkafka_v1/test_managed_kafka.py b/packages/google-cloud-managedkafka/tests/unit/gapic/managedkafka_v1/test_managed_kafka.py index 48832b931360..fcc6871f7419 100644 --- a/packages/google-cloud-managedkafka/tests/unit/gapic/managedkafka_v1/test_managed_kafka.py +++ b/packages/google-cloud-managedkafka/tests/unit/gapic/managedkafka_v1/test_managed_kafka.py @@ -1692,6 +1692,9 @@ def test_list_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Cluster) for i in results) @@ -1780,6 +1783,8 @@ async def test_list_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3624,6 +3629,9 @@ def test_list_topics_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Topic) for i in results) @@ -3712,6 +3720,8 @@ async def test_list_topics_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5484,6 +5494,9 @@ def test_list_consumer_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ConsumerGroup) for i in results) @@ -5576,6 +5589,8 @@ async def test_list_consumer_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7030,6 +7045,9 @@ def test_list_acls_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Acl) for i in results) @@ -7118,6 +7136,8 @@ async def test_list_acls_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9427,6 +9447,9 @@ def test_list_clusters_rest_pager(transport: str = "rest"): pager = client.list_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Cluster) for i in results) @@ -10472,6 +10495,9 @@ def test_list_topics_rest_pager(transport: str = "rest"): pager = client.list_topics(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Topic) for i in results) @@ -11488,6 +11514,9 @@ def test_list_consumer_groups_rest_pager(transport: str = "rest"): pager = client.list_consumer_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ConsumerGroup) for i in results) @@ -12303,6 +12332,9 @@ def test_list_acls_rest_pager(transport: str = "rest"): pager = client.list_acls(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Acl) for i in results) diff --git a/packages/google-cloud-managedkafka/tests/unit/gapic/managedkafka_v1/test_managed_kafka_connect.py b/packages/google-cloud-managedkafka/tests/unit/gapic/managedkafka_v1/test_managed_kafka_connect.py index 7345e4a6977b..5853a923f606 100644 --- a/packages/google-cloud-managedkafka/tests/unit/gapic/managedkafka_v1/test_managed_kafka_connect.py +++ b/packages/google-cloud-managedkafka/tests/unit/gapic/managedkafka_v1/test_managed_kafka_connect.py @@ -1799,6 +1799,9 @@ def test_list_connect_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ConnectCluster) for i in results) @@ -1891,6 +1894,8 @@ async def test_list_connect_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3866,6 +3871,9 @@ def test_list_connectors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Connector) for i in results) @@ -3954,6 +3962,8 @@ async def test_list_connectors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6924,6 +6934,9 @@ def test_list_connect_clusters_rest_pager(transport: str = "rest"): pager = client.list_connect_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ConnectCluster) for i in results) @@ -8019,6 +8032,9 @@ def test_list_connectors_rest_pager(transport: str = "rest"): pager = client.list_connectors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Connector) for i in results) diff --git a/packages/google-cloud-media-translation/noxfile.py b/packages/google-cloud-media-translation/noxfile.py index 32561ecc46e5..d30bb5cc5c30 100644 --- a/packages/google-cloud-media-translation/noxfile.py +++ b/packages/google-cloud-media-translation/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-media-translation/testing/constraints-3.15.txt b/packages/google-cloud-media-translation/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-media-translation/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-memcache/noxfile.py b/packages/google-cloud-memcache/noxfile.py index 53eca79c60e2..47a34790e8d5 100644 --- a/packages/google-cloud-memcache/noxfile.py +++ b/packages/google-cloud-memcache/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-memcache/testing/constraints-3.15.txt b/packages/google-cloud-memcache/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-memcache/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-memcache/tests/unit/gapic/memcache_v1/test_cloud_memcache.py b/packages/google-cloud-memcache/tests/unit/gapic/memcache_v1/test_cloud_memcache.py index 33d35a093a81..db06bdcc1bbc 100644 --- a/packages/google-cloud-memcache/tests/unit/gapic/memcache_v1/test_cloud_memcache.py +++ b/packages/google-cloud-memcache/tests/unit/gapic/memcache_v1/test_cloud_memcache.py @@ -1714,6 +1714,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_memcache.Instance) for i in results) @@ -1802,6 +1805,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4556,6 +4561,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_memcache.Instance) for i in results) diff --git a/packages/google-cloud-memcache/tests/unit/gapic/memcache_v1beta2/test_cloud_memcache.py b/packages/google-cloud-memcache/tests/unit/gapic/memcache_v1beta2/test_cloud_memcache.py index 9d79189ef76c..c934491964ad 100644 --- a/packages/google-cloud-memcache/tests/unit/gapic/memcache_v1beta2/test_cloud_memcache.py +++ b/packages/google-cloud-memcache/tests/unit/gapic/memcache_v1beta2/test_cloud_memcache.py @@ -1714,6 +1714,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_memcache.Instance) for i in results) @@ -1802,6 +1805,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4930,6 +4935,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_memcache.Instance) for i in results) diff --git a/packages/google-cloud-memorystore/noxfile.py b/packages/google-cloud-memorystore/noxfile.py index f25e737a088f..5badb801c4cb 100644 --- a/packages/google-cloud-memorystore/noxfile.py +++ b/packages/google-cloud-memorystore/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-memorystore/testing/constraints-3.15.txt b/packages/google-cloud-memorystore/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-memorystore/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-memorystore/tests/unit/gapic/memorystore_v1/test_memorystore.py b/packages/google-cloud-memorystore/tests/unit/gapic/memorystore_v1/test_memorystore.py index dbd31326d61e..8ed864eb1ccb 100644 --- a/packages/google-cloud-memorystore/tests/unit/gapic/memorystore_v1/test_memorystore.py +++ b/packages/google-cloud-memorystore/tests/unit/gapic/memorystore_v1/test_memorystore.py @@ -1680,6 +1680,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, memorystore.Instance) for i in results) @@ -1768,6 +1771,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4766,6 +4771,9 @@ def test_list_backup_collections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, memorystore.BackupCollection) for i in results) @@ -4858,6 +4866,8 @@ async def test_list_backup_collections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5661,6 +5671,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, memorystore.Backup) for i in results) @@ -5749,6 +5762,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7314,6 +7329,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, memorystore.Instance) for i in results) @@ -8926,6 +8944,9 @@ def test_list_backup_collections_rest_pager(transport: str = "rest"): pager = client.list_backup_collections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, memorystore.BackupCollection) for i in results) @@ -9367,6 +9388,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, memorystore.Backup) for i in results) diff --git a/packages/google-cloud-memorystore/tests/unit/gapic/memorystore_v1beta/test_memorystore.py b/packages/google-cloud-memorystore/tests/unit/gapic/memorystore_v1beta/test_memorystore.py index 03c35c358cd3..66937835ef2f 100644 --- a/packages/google-cloud-memorystore/tests/unit/gapic/memorystore_v1beta/test_memorystore.py +++ b/packages/google-cloud-memorystore/tests/unit/gapic/memorystore_v1beta/test_memorystore.py @@ -1677,6 +1677,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, memorystore.Instance) for i in results) @@ -1765,6 +1768,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4165,6 +4170,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, memorystore.Instance) for i in results) diff --git a/packages/google-cloud-migrationcenter/noxfile.py b/packages/google-cloud-migrationcenter/noxfile.py index 24d0f586240d..406797495568 100644 --- a/packages/google-cloud-migrationcenter/noxfile.py +++ b/packages/google-cloud-migrationcenter/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-migrationcenter/testing/constraints-3.15.txt b/packages/google-cloud-migrationcenter/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-migrationcenter/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-migrationcenter/tests/unit/gapic/migrationcenter_v1/test_migration_center.py b/packages/google-cloud-migrationcenter/tests/unit/gapic/migrationcenter_v1/test_migration_center.py index 9035f0136f9a..541f85b024c3 100644 --- a/packages/google-cloud-migrationcenter/tests/unit/gapic/migrationcenter_v1/test_migration_center.py +++ b/packages/google-cloud-migrationcenter/tests/unit/gapic/migrationcenter_v1/test_migration_center.py @@ -1741,6 +1741,9 @@ def test_list_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.Asset) for i in results) @@ -1829,6 +1832,8 @@ async def test_list_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4838,6 +4843,9 @@ def test_list_import_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.ImportJob) for i in results) @@ -4926,6 +4934,8 @@ async def test_list_import_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7467,6 +7477,9 @@ def test_list_import_data_files_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.ImportDataFile) for i in results) @@ -7559,6 +7572,8 @@ async def test_list_import_data_files_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8721,6 +8736,9 @@ def test_list_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.Group) for i in results) @@ -8809,6 +8827,8 @@ async def test_list_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11308,6 +11328,9 @@ def test_list_error_frames_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.ErrorFrame) for i in results) @@ -11400,6 +11423,8 @@ async def test_list_error_frames_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12162,6 +12187,9 @@ def test_list_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.Source) for i in results) @@ -12250,6 +12278,8 @@ async def test_list_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14080,6 +14110,9 @@ def test_list_preference_sets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.PreferenceSet) for i in results) @@ -14172,6 +14205,8 @@ async def test_list_preference_sets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17449,6 +17484,9 @@ def test_list_report_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.ReportConfig) for i in results) @@ -17541,6 +17579,8 @@ async def test_list_report_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -19019,6 +19059,9 @@ def test_list_reports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.Report) for i in results) @@ -19107,6 +19150,8 @@ async def test_list_reports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -19742,6 +19787,9 @@ def test_list_assets_rest_pager(transport: str = "rest"): pager = client.list_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.Asset) for i in results) @@ -21440,6 +21488,9 @@ def test_list_import_jobs_rest_pager(transport: str = "rest"): pager = client.list_import_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.ImportJob) for i in results) @@ -22834,6 +22885,9 @@ def test_list_import_data_files_rest_pager(transport: str = "rest"): pager = client.list_import_data_files(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.ImportDataFile) for i in results) @@ -23502,6 +23556,9 @@ def test_list_groups_rest_pager(transport: str = "rest"): pager = client.list_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.Group) for i in results) @@ -24912,6 +24969,9 @@ def test_list_error_frames_rest_pager(transport: str = "rest"): pager = client.list_error_frames(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.ErrorFrame) for i in results) @@ -25353,6 +25413,9 @@ def test_list_sources_rest_pager(transport: str = "rest"): pager = client.list_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.Source) for i in results) @@ -26380,6 +26443,9 @@ def test_list_preference_sets_rest_pager(transport: str = "rest"): pager = client.list_preference_sets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.PreferenceSet) for i in results) @@ -28215,6 +28281,9 @@ def test_list_report_configs_rest_pager(transport: str = "rest"): pager = client.list_report_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.ReportConfig) for i in results) @@ -29077,6 +29146,9 @@ def test_list_reports_rest_pager(transport: str = "rest"): pager = client.list_reports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, migrationcenter.Report) for i in results) diff --git a/packages/google-cloud-modelarmor/noxfile.py b/packages/google-cloud-modelarmor/noxfile.py index 543e80995c76..30e131f3d2ac 100644 --- a/packages/google-cloud-modelarmor/noxfile.py +++ b/packages/google-cloud-modelarmor/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-modelarmor/testing/constraints-3.15.txt b/packages/google-cloud-modelarmor/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-modelarmor/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 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 871aa451e671..a3ed0b3d7079 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 @@ -1667,6 +1667,9 @@ def test_list_templates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Template) for i in results) @@ -1755,6 +1758,8 @@ async def test_list_templates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4899,6 +4904,9 @@ def test_list_templates_rest_pager(transport: str = "rest"): pager = client.list_templates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Template) for i in results) diff --git a/packages/google-cloud-modelarmor/tests/unit/gapic/modelarmor_v1beta/test_model_armor.py b/packages/google-cloud-modelarmor/tests/unit/gapic/modelarmor_v1beta/test_model_armor.py index 1f9bfc692ae5..e51ea6627f0c 100644 --- a/packages/google-cloud-modelarmor/tests/unit/gapic/modelarmor_v1beta/test_model_armor.py +++ b/packages/google-cloud-modelarmor/tests/unit/gapic/modelarmor_v1beta/test_model_armor.py @@ -1667,6 +1667,9 @@ def test_list_templates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Template) for i in results) @@ -1755,6 +1758,8 @@ async def test_list_templates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4900,6 +4905,9 @@ def test_list_templates_rest_pager(transport: str = "rest"): pager = client.list_templates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Template) for i in results) diff --git a/packages/google-cloud-monitoring-dashboards/noxfile.py b/packages/google-cloud-monitoring-dashboards/noxfile.py index f74cd9919ad2..c2742fa9ec34 100644 --- a/packages/google-cloud-monitoring-dashboards/noxfile.py +++ b/packages/google-cloud-monitoring-dashboards/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", # TODO(https://github.com/googleapis/google-cloud-python/issues/16083) @@ -567,7 +576,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-monitoring-dashboards/testing/constraints-3.15.txt b/packages/google-cloud-monitoring-dashboards/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-monitoring-dashboards/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-monitoring-dashboards/tests/unit/gapic/monitoring_dashboard_v1/test_dashboards_service.py b/packages/google-cloud-monitoring-dashboards/tests/unit/gapic/monitoring_dashboard_v1/test_dashboards_service.py index 95e3884c0f33..889213e086a3 100644 --- a/packages/google-cloud-monitoring-dashboards/tests/unit/gapic/monitoring_dashboard_v1/test_dashboards_service.py +++ b/packages/google-cloud-monitoring-dashboards/tests/unit/gapic/monitoring_dashboard_v1/test_dashboards_service.py @@ -2112,6 +2112,9 @@ def test_list_dashboards_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dashboard.Dashboard) for i in results) @@ -2200,6 +2203,8 @@ async def test_list_dashboards_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3577,6 +3582,9 @@ def test_list_dashboards_rest_pager(transport: str = "rest"): pager = client.list_dashboards(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dashboard.Dashboard) for i in results) diff --git a/packages/google-cloud-monitoring-metrics-scopes/noxfile.py b/packages/google-cloud-monitoring-metrics-scopes/noxfile.py index c28daef40ff2..c59347932d95 100644 --- a/packages/google-cloud-monitoring-metrics-scopes/noxfile.py +++ b/packages/google-cloud-monitoring-metrics-scopes/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-monitoring-metrics-scopes/testing/constraints-3.15.txt b/packages/google-cloud-monitoring-metrics-scopes/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-monitoring-metrics-scopes/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-monitoring/noxfile.py b/packages/google-cloud-monitoring/noxfile.py index ed53a8853665..2be1339c86ff 100644 --- a/packages/google-cloud-monitoring/noxfile.py +++ b/packages/google-cloud-monitoring/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -108,6 +116,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", # TODO(https://github.com/googleapis/google-cloud-python/issues/16083) @@ -568,7 +577,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-monitoring/testing/constraints-3.15.txt b/packages/google-cloud-monitoring/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-monitoring/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_alert_policy_service.py b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_alert_policy_service.py index 2a06c5cf0787..d3f2330c3e00 100644 --- a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_alert_policy_service.py +++ b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_alert_policy_service.py @@ -1750,6 +1750,9 @@ def test_list_alert_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, alert.AlertPolicy) for i in results) @@ -1842,6 +1845,8 @@ async def test_list_alert_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_group_service.py b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_group_service.py index 6491aed75023..63ca51431619 100644 --- a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_group_service.py +++ b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_group_service.py @@ -1669,6 +1669,9 @@ def test_list_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, group.Group) for i in results) @@ -1757,6 +1760,8 @@ async def test_list_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3535,6 +3540,9 @@ def test_list_group_members_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3629,6 +3637,8 @@ async def test_list_group_members_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_metric_service.py b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_metric_service.py index cbfb669bb81c..ec394c00a703 100644 --- a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_metric_service.py +++ b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_metric_service.py @@ -1717,6 +1717,9 @@ def test_list_monitored_resource_descriptors_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1812,6 +1815,8 @@ async def test_list_monitored_resource_descriptors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2633,6 +2638,9 @@ def test_list_metric_descriptors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metric_pb2.MetricDescriptor) for i in results) @@ -2725,6 +2733,8 @@ async def test_list_metric_descriptors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4292,6 +4302,9 @@ def test_list_time_series_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gm_metric.TimeSeries) for i in results) @@ -4380,6 +4393,8 @@ async def test_list_time_series_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_notification_channel_service.py b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_notification_channel_service.py index d22ab18c642c..b79bf4dd1ba2 100644 --- a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_notification_channel_service.py +++ b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_notification_channel_service.py @@ -1794,6 +1794,9 @@ def test_list_notification_channel_descriptors_pager(transport_name: str = "grpc assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1888,6 +1891,8 @@ async def test_list_notification_channel_descriptors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2720,6 +2725,9 @@ def test_list_notification_channels_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, notification.NotificationChannel) for i in results) @@ -2812,6 +2820,8 @@ async def test_list_notification_channels_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_query_service.py b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_query_service.py index d32d82713662..99967469da64 100644 --- a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_query_service.py +++ b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_query_service.py @@ -1594,6 +1594,9 @@ def test_query_time_series_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, metric.TimeSeriesData) for i in results) @@ -1686,6 +1689,8 @@ async def test_query_time_series_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_service_monitoring_service.py b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_service_monitoring_service.py index fec1ef71058d..0938a6e6227e 100644 --- a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_service_monitoring_service.py +++ b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_service_monitoring_service.py @@ -2398,6 +2398,9 @@ def test_list_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Service) for i in results) @@ -2486,6 +2489,8 @@ async def test_list_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4293,6 +4298,9 @@ def test_list_service_level_objectives_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.ServiceLevelObjective) for i in results) @@ -4385,6 +4393,8 @@ async def test_list_service_level_objectives_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_snooze_service.py b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_snooze_service.py index e29a3e4a9d93..7675f42d9d8e 100644 --- a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_snooze_service.py +++ b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_snooze_service.py @@ -2018,6 +2018,9 @@ def test_list_snoozes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, snooze.Snooze) for i in results) @@ -2106,6 +2109,8 @@ async def test_list_snoozes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_uptime_check_service.py b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_uptime_check_service.py index 66948d8a5fa0..b1cfdd363042 100644 --- a/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_uptime_check_service.py +++ b/packages/google-cloud-monitoring/tests/unit/gapic/monitoring_v3/test_uptime_check_service.py @@ -1744,6 +1744,9 @@ def test_list_uptime_check_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, uptime.UptimeCheckConfig) for i in results) @@ -1836,6 +1839,8 @@ async def test_list_uptime_check_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3567,6 +3572,9 @@ def test_list_uptime_check_ips_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, uptime.UptimeCheckIp) for i in results) @@ -3659,6 +3667,8 @@ async def test_list_uptime_check_ips_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-netapp/noxfile.py b/packages/google-cloud-netapp/noxfile.py index 9cdc985be32a..62231dc14f89 100644 --- a/packages/google-cloud-netapp/noxfile.py +++ b/packages/google-cloud-netapp/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-netapp/testing/constraints-3.15.txt b/packages/google-cloud-netapp/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-netapp/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-netapp/tests/unit/gapic/netapp_v1/test_net_app.py b/packages/google-cloud-netapp/tests/unit/gapic/netapp_v1/test_net_app.py index a673f76149b5..f03c96263924 100644 --- a/packages/google-cloud-netapp/tests/unit/gapic/netapp_v1/test_net_app.py +++ b/packages/google-cloud-netapp/tests/unit/gapic/netapp_v1/test_net_app.py @@ -1691,6 +1691,9 @@ def test_list_storage_pools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storage_pool.StoragePool) for i in results) @@ -1783,6 +1786,8 @@ async def test_list_storage_pools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4263,6 +4268,9 @@ def test_list_volumes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, volume.Volume) for i in results) @@ -4351,6 +4359,8 @@ async def test_list_volumes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6754,6 +6764,9 @@ def test_list_snapshots_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, snapshot.Snapshot) for i in results) @@ -6842,6 +6855,8 @@ async def test_list_snapshots_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8649,6 +8664,9 @@ def test_list_active_directories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, active_directory.ActiveDirectory) for i in results) @@ -8741,6 +8759,8 @@ async def test_list_active_directories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10676,6 +10696,9 @@ def test_list_kms_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, kms.KmsConfig) for i in results) @@ -10764,6 +10787,8 @@ async def test_list_kms_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13130,6 +13155,9 @@ def test_list_replications_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, replication.Replication) for i in results) @@ -13222,6 +13250,8 @@ async def test_list_replications_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17153,6 +17183,9 @@ def test_list_backup_vaults_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup_vault.BackupVault) for i in results) @@ -17245,6 +17278,8 @@ async def test_list_backup_vaults_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -19093,6 +19128,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup.Backup) for i in results) @@ -19181,6 +19219,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -21039,6 +21079,9 @@ def test_list_backup_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup_policy.BackupPolicy) for i in results) @@ -21131,6 +21174,8 @@ async def test_list_backup_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -22273,6 +22318,9 @@ def test_list_quota_rules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, quota_rule.QuotaRule) for i in results) @@ -22361,6 +22409,8 @@ async def test_list_quota_rules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -24473,6 +24523,9 @@ def test_list_host_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, host_group.HostGroup) for i in results) @@ -24561,6 +24614,8 @@ async def test_list_host_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -27273,6 +27328,9 @@ def test_list_storage_pools_rest_pager(transport: str = "rest"): pager = client.list_storage_pools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storage_pool.StoragePool) for i in results) @@ -28550,6 +28608,9 @@ def test_list_volumes_rest_pager(transport: str = "rest"): pager = client.list_volumes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, volume.Volume) for i in results) @@ -29836,6 +29897,9 @@ def test_list_snapshots_rest_pager(transport: str = "rest"): pager = client.list_snapshots(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, snapshot.Snapshot) for i in results) @@ -30857,6 +30921,9 @@ def test_list_active_directories_rest_pager(transport: str = "rest"): pager = client.list_active_directories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, active_directory.ActiveDirectory) for i in results) @@ -31887,6 +31954,9 @@ def test_list_kms_configs_rest_pager(transport: str = "rest"): pager = client.list_kms_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, kms.KmsConfig) for i in results) @@ -33151,6 +33221,9 @@ def test_list_replications_rest_pager(transport: str = "rest"): pager = client.list_replications(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, replication.Replication) for i in results) @@ -35224,6 +35297,9 @@ def test_list_backup_vaults_rest_pager(transport: str = "rest"): pager = client.list_backup_vaults(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup_vault.BackupVault) for i in results) @@ -36246,6 +36322,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup.Backup) for i in results) @@ -37268,6 +37347,9 @@ def test_list_backup_policies_rest_pager(transport: str = "rest"): pager = client.list_backup_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup_policy.BackupPolicy) for i in results) @@ -37908,6 +37990,9 @@ def test_list_quota_rules_rest_pager(transport: str = "rest"): pager = client.list_quota_rules(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, quota_rule.QuotaRule) for i in results) @@ -39064,6 +39149,9 @@ def test_list_host_groups_rest_pager(transport: str = "rest"): pager = client.list_host_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, host_group.HostGroup) for i in results) diff --git a/packages/google-cloud-network-connectivity/noxfile.py b/packages/google-cloud-network-connectivity/noxfile.py index 52a57bff4416..c56d5ce5d673 100644 --- a/packages/google-cloud-network-connectivity/noxfile.py +++ b/packages/google-cloud-network-connectivity/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-network-connectivity/testing/constraints-3.15.txt b/packages/google-cloud-network-connectivity/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-network-connectivity/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_cross_network_automation_service.py b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_cross_network_automation_service.py index 7e1a2e9cfd40..eb0cca558918 100644 --- a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_cross_network_automation_service.py +++ b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_cross_network_automation_service.py @@ -1823,6 +1823,9 @@ def test_list_service_connection_maps_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1918,6 +1921,8 @@ async def test_list_service_connection_maps_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3864,6 +3869,9 @@ def test_list_service_connection_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3959,6 +3967,8 @@ async def test_list_service_connection_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5890,6 +5900,9 @@ def test_list_service_classes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5984,6 +5997,8 @@ async def test_list_service_classes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7880,6 +7895,9 @@ def test_list_service_connection_tokens_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -7975,6 +7993,8 @@ async def test_list_service_connection_tokens_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_data_transfer_service.py b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_data_transfer_service.py index 0a64b3c632bf..52bdb1033fd6 100644 --- a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_data_transfer_service.py +++ b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_data_transfer_service.py @@ -1762,6 +1762,9 @@ def test_list_multicloud_data_transfer_configs_pager(transport_name: str = "grpc assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1856,6 +1859,8 @@ async def test_list_multicloud_data_transfer_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3774,6 +3779,9 @@ def test_list_destinations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_transfer.Destination) for i in results) @@ -3866,6 +3874,8 @@ async def test_list_destinations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6107,6 +6117,9 @@ def test_list_multicloud_data_transfer_supported_services_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6207,6 +6220,8 @@ async def test_list_multicloud_data_transfer_supported_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_hub_service.py b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_hub_service.py index 104bb8c11b14..514426e010e7 100644 --- a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_hub_service.py +++ b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_hub_service.py @@ -1657,6 +1657,9 @@ def test_list_hubs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.Hub) for i in results) @@ -1745,6 +1748,8 @@ async def test_list_hubs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3541,6 +3546,9 @@ def test_list_hub_spokes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.Spoke) for i in results) @@ -3629,6 +3637,8 @@ async def test_list_hub_spokes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4065,6 +4075,9 @@ def test_query_hub_status_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.HubStatusEntry) for i in results) @@ -4153,6 +4166,8 @@ async def test_query_hub_status_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4589,6 +4604,9 @@ def test_list_spokes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.Spoke) for i in results) @@ -4677,6 +4695,8 @@ async def test_list_spokes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8597,6 +8617,9 @@ def test_list_routes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.Route) for i in results) @@ -8685,6 +8708,8 @@ async def test_list_routes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9139,6 +9164,9 @@ def test_list_route_tables_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.RouteTable) for i in results) @@ -9231,6 +9259,8 @@ async def test_list_route_tables_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10003,6 +10033,9 @@ def test_list_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.Group) for i in results) @@ -10091,6 +10124,8 @@ async def test_list_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_internal_range_service.py b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_internal_range_service.py index 96b7c7a62a17..ff01dcf0e393 100644 --- a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_internal_range_service.py +++ b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_internal_range_service.py @@ -1762,6 +1762,9 @@ def test_list_internal_ranges_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, internal_range.InternalRange) for i in results) @@ -1854,6 +1857,8 @@ async def test_list_internal_ranges_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_policy_based_routing_service.py b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_policy_based_routing_service.py index 9629bdcc0d60..a0e067b929e0 100644 --- a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_policy_based_routing_service.py +++ b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1/test_policy_based_routing_service.py @@ -1780,6 +1780,9 @@ def test_list_policy_based_routes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1874,6 +1877,8 @@ async def test_list_policy_based_routes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1alpha1/test_hub_service.py b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1alpha1/test_hub_service.py index d8e84d1b887a..3c250b9c3e02 100644 --- a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1alpha1/test_hub_service.py +++ b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1alpha1/test_hub_service.py @@ -1651,6 +1651,9 @@ def test_list_hubs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.Hub) for i in results) @@ -1739,6 +1742,8 @@ async def test_list_hubs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3523,6 +3528,9 @@ def test_list_spokes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.Spoke) for i in results) @@ -3611,6 +3619,8 @@ async def test_list_spokes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_data_transfer_service.py b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_data_transfer_service.py index dee377fb348c..a51d94b6db95 100644 --- a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_data_transfer_service.py +++ b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_data_transfer_service.py @@ -1762,6 +1762,9 @@ def test_list_multicloud_data_transfer_configs_pager(transport_name: str = "grpc assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1856,6 +1859,8 @@ async def test_list_multicloud_data_transfer_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3774,6 +3779,9 @@ def test_list_destinations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_transfer.Destination) for i in results) @@ -3866,6 +3874,8 @@ async def test_list_destinations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6107,6 +6117,9 @@ def test_list_multicloud_data_transfer_supported_services_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6207,6 +6220,8 @@ async def test_list_multicloud_data_transfer_supported_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_hub_service.py b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_hub_service.py index 06ac9858d920..d5d5866dffbe 100644 --- a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_hub_service.py +++ b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_hub_service.py @@ -1657,6 +1657,9 @@ def test_list_hubs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.Hub) for i in results) @@ -1745,6 +1748,8 @@ async def test_list_hubs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3541,6 +3546,9 @@ def test_list_hub_spokes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.Spoke) for i in results) @@ -3629,6 +3637,8 @@ async def test_list_hub_spokes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4065,6 +4075,9 @@ def test_query_hub_status_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.HubStatusEntry) for i in results) @@ -4153,6 +4166,8 @@ async def test_query_hub_status_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4589,6 +4604,9 @@ def test_list_spokes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.Spoke) for i in results) @@ -4677,6 +4695,8 @@ async def test_list_spokes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8597,6 +8617,9 @@ def test_list_routes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.Route) for i in results) @@ -8685,6 +8708,8 @@ async def test_list_routes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9139,6 +9164,9 @@ def test_list_route_tables_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.RouteTable) for i in results) @@ -9231,6 +9259,8 @@ async def test_list_route_tables_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10003,6 +10033,9 @@ def test_list_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.Group) for i in results) @@ -10091,6 +10124,8 @@ async def test_list_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11630,6 +11665,9 @@ def test_list_gateway_advertised_routes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, hub.GatewayAdvertisedRoute) for i in results) @@ -11722,6 +11760,8 @@ async def test_list_gateway_advertised_routes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_policy_based_routing_service.py b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_policy_based_routing_service.py index ab91baaba747..10b2e328fc27 100644 --- a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_policy_based_routing_service.py +++ b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_policy_based_routing_service.py @@ -1780,6 +1780,9 @@ def test_list_policy_based_routes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1874,6 +1877,8 @@ async def test_list_policy_based_routes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_transport_manager.py b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_transport_manager.py index 305e3427cd9e..52150b601d8b 100644 --- a/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_transport_manager.py +++ b/packages/google-cloud-network-connectivity/tests/unit/gapic/networkconnectivity_v1beta/test_transport_manager.py @@ -1740,6 +1740,9 @@ def test_list_remote_transport_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1834,6 +1837,8 @@ async def test_list_remote_transport_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2673,6 +2678,9 @@ def test_list_transports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, transport_manager.Transport) for i in results) @@ -2761,6 +2769,8 @@ async def test_list_transports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-network-management/noxfile.py b/packages/google-cloud-network-management/noxfile.py index c30a6b93d952..92bffe4e867f 100644 --- a/packages/google-cloud-network-management/noxfile.py +++ b/packages/google-cloud-network-management/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-network-management/testing/constraints-3.15.txt b/packages/google-cloud-network-management/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-network-management/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-network-management/tests/unit/gapic/network_management_v1/test_organization_vpc_flow_logs_service.py b/packages/google-cloud-network-management/tests/unit/gapic/network_management_v1/test_organization_vpc_flow_logs_service.py index 3b0f312c9d47..a88e373f9e46 100644 --- a/packages/google-cloud-network-management/tests/unit/gapic/network_management_v1/test_organization_vpc_flow_logs_service.py +++ b/packages/google-cloud-network-management/tests/unit/gapic/network_management_v1/test_organization_vpc_flow_logs_service.py @@ -1877,6 +1877,9 @@ def test_list_vpc_flow_logs_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1971,6 +1974,8 @@ async def test_list_vpc_flow_logs_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3781,6 +3786,9 @@ def test_list_vpc_flow_logs_configs_rest_pager(transport: str = "rest"): pager = client.list_vpc_flow_logs_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-network-management/tests/unit/gapic/network_management_v1/test_reachability_service.py b/packages/google-cloud-network-management/tests/unit/gapic/network_management_v1/test_reachability_service.py index b5e37e18f66d..4b3528b5b2e2 100644 --- a/packages/google-cloud-network-management/tests/unit/gapic/network_management_v1/test_reachability_service.py +++ b/packages/google-cloud-network-management/tests/unit/gapic/network_management_v1/test_reachability_service.py @@ -1809,6 +1809,9 @@ def test_list_connectivity_tests_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, connectivity_test.ConnectivityTest) for i in results) @@ -1901,6 +1904,8 @@ async def test_list_connectivity_tests_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3919,6 +3924,9 @@ def test_list_connectivity_tests_rest_pager(transport: str = "rest"): pager = client.list_connectivity_tests(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, connectivity_test.ConnectivityTest) for i in results) diff --git a/packages/google-cloud-network-management/tests/unit/gapic/network_management_v1/test_vpc_flow_logs_service.py b/packages/google-cloud-network-management/tests/unit/gapic/network_management_v1/test_vpc_flow_logs_service.py index 0c306760e0ed..ab908715a2e0 100644 --- a/packages/google-cloud-network-management/tests/unit/gapic/network_management_v1/test_vpc_flow_logs_service.py +++ b/packages/google-cloud-network-management/tests/unit/gapic/network_management_v1/test_vpc_flow_logs_service.py @@ -1794,6 +1794,9 @@ def test_list_vpc_flow_logs_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1888,6 +1891,8 @@ async def test_list_vpc_flow_logs_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3762,6 +3767,9 @@ def test_query_org_vpc_flow_logs_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3856,6 +3864,8 @@ async def test_query_org_vpc_flow_logs_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4237,6 +4247,9 @@ def test_show_effective_flow_logs_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4332,6 +4345,8 @@ async def test_show_effective_flow_logs_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4648,6 +4663,9 @@ def test_list_vpc_flow_logs_configs_rest_pager(transport: str = "rest"): pager = client.list_vpc_flow_logs_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5645,6 +5663,9 @@ def test_query_org_vpc_flow_logs_configs_rest_pager(transport: str = "rest"): pager = client.query_org_vpc_flow_logs_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5879,6 +5900,9 @@ def test_show_effective_flow_logs_configs_rest_pager(transport: str = "rest"): pager = client.show_effective_flow_logs_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-network-security/noxfile.py b/packages/google-cloud-network-security/noxfile.py index 14d2cb6a6f53..634544cfb47f 100644 --- a/packages/google-cloud-network-security/noxfile.py +++ b/packages/google-cloud-network-security/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-network-security/testing/constraints-3.15.txt b/packages/google-cloud-network-security/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-network-security/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_address_group_service.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_address_group_service.py index f58a3efd15f2..fc9daba85db9 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_address_group_service.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_address_group_service.py @@ -1797,6 +1797,9 @@ def test_list_address_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, address_group.AddressGroup) for i in results) @@ -1889,6 +1892,8 @@ async def test_list_address_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4873,6 +4878,9 @@ def test_list_address_group_references_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4971,6 +4979,8 @@ async def test_list_address_group_references_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5287,6 +5297,9 @@ def test_list_address_groups_rest_pager(transport: str = "rest"): pager = client.list_address_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, address_group.AddressGroup) for i in results) @@ -6941,6 +6954,9 @@ def test_list_address_group_references_rest_pager(transport: str = "rest"): pager = client.list_address_group_references(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_dns_threat_detector_service.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_dns_threat_detector_service.py index 18032c8d6dd6..386cc593dac1 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_dns_threat_detector_service.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_dns_threat_detector_service.py @@ -1811,6 +1811,9 @@ def test_list_dns_threat_detectors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1905,6 +1908,8 @@ async def test_list_dns_threat_detectors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3663,6 +3668,9 @@ def test_list_dns_threat_detectors_rest_pager(transport: str = "rest"): pager = client.list_dns_threat_detectors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_firewall_activation.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_firewall_activation.py index 4b407bada9f9..69166e75a0d9 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_firewall_activation.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_firewall_activation.py @@ -1785,6 +1785,9 @@ def test_list_firewall_endpoints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, firewall_activation.FirewallEndpoint) for i in results) @@ -1877,6 +1880,8 @@ async def test_list_firewall_endpoints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2342,6 +2347,9 @@ def test_list_project_firewall_endpoints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, firewall_activation.FirewallEndpoint) for i in results) @@ -2434,6 +2442,8 @@ async def test_list_project_firewall_endpoints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5821,6 +5831,9 @@ def test_list_firewall_endpoint_associations_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5916,6 +5929,8 @@ async def test_list_firewall_endpoint_associations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7709,6 +7724,9 @@ def test_list_firewall_endpoints_rest_pager(transport: str = "rest"): pager = client.list_firewall_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, firewall_activation.FirewallEndpoint) for i in results) @@ -7981,6 +7999,9 @@ def test_list_project_firewall_endpoints_rest_pager(transport: str = "rest"): pager = client.list_project_firewall_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, firewall_activation.FirewallEndpoint) for i in results) @@ -9863,6 +9884,9 @@ def test_list_firewall_endpoint_associations_rest_pager(transport: str = "rest") pager = client.list_firewall_endpoint_associations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_intercept.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_intercept.py index 0bcde8b5fa8c..53cce4fafd69 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_intercept.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_intercept.py @@ -1695,6 +1695,9 @@ def test_list_intercept_endpoint_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intercept.InterceptEndpointGroup) for i in results) @@ -1787,6 +1790,8 @@ async def test_list_intercept_endpoint_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3702,6 +3707,9 @@ def test_list_intercept_endpoint_group_associations_pager(transport_name: str = assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3798,6 +3806,8 @@ async def test_list_intercept_endpoint_group_associations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5726,6 +5736,9 @@ def test_list_intercept_deployment_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intercept.InterceptDeploymentGroup) for i in results) @@ -5818,6 +5831,8 @@ async def test_list_intercept_deployment_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7735,6 +7750,9 @@ def test_list_intercept_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intercept.InterceptDeployment) for i in results) @@ -7827,6 +7845,8 @@ async def test_list_intercept_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9582,6 +9602,9 @@ def test_list_intercept_endpoint_groups_rest_pager(transport: str = "rest"): pager = client.list_intercept_endpoint_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intercept.InterceptEndpointGroup) for i in results) @@ -10677,6 +10700,9 @@ def test_list_intercept_endpoint_group_associations_rest_pager(transport: str = request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11771,6 +11797,9 @@ def test_list_intercept_deployment_groups_rest_pager(transport: str = "rest"): pager = client.list_intercept_deployment_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intercept.InterceptDeploymentGroup) for i in results) @@ -12859,6 +12888,9 @@ def test_list_intercept_deployments_rest_pager(transport: str = "rest"): pager = client.list_intercept_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intercept.InterceptDeployment) for i in results) diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_mirroring.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_mirroring.py index 28313473c292..23ee199d9704 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_mirroring.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_mirroring.py @@ -1695,6 +1695,9 @@ def test_list_mirroring_endpoint_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mirroring.MirroringEndpointGroup) for i in results) @@ -1787,6 +1790,8 @@ async def test_list_mirroring_endpoint_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3706,6 +3711,9 @@ def test_list_mirroring_endpoint_group_associations_pager(transport_name: str = assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3802,6 +3810,8 @@ async def test_list_mirroring_endpoint_group_associations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5726,6 +5736,9 @@ def test_list_mirroring_deployment_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mirroring.MirroringDeploymentGroup) for i in results) @@ -5818,6 +5831,8 @@ async def test_list_mirroring_deployment_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7735,6 +7750,9 @@ def test_list_mirroring_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mirroring.MirroringDeployment) for i in results) @@ -7827,6 +7845,8 @@ async def test_list_mirroring_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9582,6 +9602,9 @@ def test_list_mirroring_endpoint_groups_rest_pager(transport: str = "rest"): pager = client.list_mirroring_endpoint_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mirroring.MirroringEndpointGroup) for i in results) @@ -10677,6 +10700,9 @@ def test_list_mirroring_endpoint_group_associations_rest_pager(transport: str = request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11771,6 +11797,9 @@ def test_list_mirroring_deployment_groups_rest_pager(transport: str = "rest"): pager = client.list_mirroring_deployment_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mirroring.MirroringDeploymentGroup) for i in results) @@ -12859,6 +12888,9 @@ def test_list_mirroring_deployments_rest_pager(transport: str = "rest"): pager = client.list_mirroring_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mirroring.MirroringDeployment) for i in results) diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_network_security.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_network_security.py index fbe094ed035a..ead669b7e0db 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_network_security.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_network_security.py @@ -1796,6 +1796,9 @@ def test_list_authorization_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1890,6 +1893,8 @@ async def test_list_authorization_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3809,6 +3814,9 @@ def test_list_backend_authentication_configs_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3904,6 +3912,8 @@ async def test_list_backend_authentication_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5874,6 +5884,9 @@ def test_list_server_tls_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, server_tls_policy.ServerTlsPolicy) for i in results) @@ -5966,6 +5979,8 @@ async def test_list_server_tls_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7849,6 +7864,9 @@ def test_list_client_tls_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, client_tls_policy.ClientTlsPolicy) for i in results) @@ -7941,6 +7959,8 @@ async def test_list_client_tls_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9834,6 +9854,9 @@ def test_list_gateway_security_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -9929,6 +9952,8 @@ async def test_list_gateway_security_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11847,6 +11872,9 @@ def test_list_gateway_security_policy_rules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11942,6 +11970,8 @@ async def test_list_gateway_security_policy_rules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13864,6 +13894,9 @@ def test_list_url_lists_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, url_list.UrlList) for i in results) @@ -13952,6 +13985,8 @@ async def test_list_url_lists_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15749,6 +15784,9 @@ def test_list_tls_inspection_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -15843,6 +15881,8 @@ async def test_list_tls_inspection_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17781,6 +17821,9 @@ def test_list_authz_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, authz_policy.AuthzPolicy) for i in results) @@ -17873,6 +17916,8 @@ async def test_list_authz_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -19593,6 +19638,9 @@ def test_list_authorization_policies_rest_pager(transport: str = "rest"): pager = client.list_authorization_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -20650,6 +20698,9 @@ def test_list_backend_authentication_configs_rest_pager(transport: str = "rest") pager = client.list_backend_authentication_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -21726,6 +21777,9 @@ def test_list_server_tls_policies_rest_pager(transport: str = "rest"): pager = client.list_server_tls_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, server_tls_policy.ServerTlsPolicy) for i in results) @@ -22757,6 +22811,9 @@ def test_list_client_tls_policies_rest_pager(transport: str = "rest"): pager = client.list_client_tls_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, client_tls_policy.ClientTlsPolicy) for i in results) @@ -23795,6 +23852,9 @@ def test_list_gateway_security_policies_rest_pager(transport: str = "rest"): pager = client.list_gateway_security_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -24870,6 +24930,9 @@ def test_list_gateway_security_policy_rules_rest_pager(transport: str = "rest"): pager = client.list_gateway_security_policy_rules(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -25908,6 +25971,9 @@ def test_list_url_lists_rest_pager(transport: str = "rest"): pager = client.list_url_lists(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, url_list.UrlList) for i in results) @@ -26909,6 +26975,9 @@ def test_list_tls_inspection_policies_rest_pager(transport: str = "rest"): pager = client.list_tls_inspection_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -27956,6 +28025,9 @@ def test_list_authz_policies_rest_pager(transport: str = "rest"): pager = client.list_authz_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, authz_policy.AuthzPolicy) for i in results) diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_organization_address_group_service.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_organization_address_group_service.py index 15b1e9af7622..947570a1e221 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_organization_address_group_service.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_organization_address_group_service.py @@ -1871,6 +1871,9 @@ def test_list_address_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, address_group.AddressGroup) for i in results) @@ -1963,6 +1966,8 @@ async def test_list_address_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4947,6 +4952,9 @@ def test_list_address_group_references_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5045,6 +5053,8 @@ async def test_list_address_group_references_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5361,6 +5371,9 @@ def test_list_address_groups_rest_pager(transport: str = "rest"): pager = client.list_address_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, address_group.AddressGroup) for i in results) @@ -7015,6 +7028,9 @@ def test_list_address_group_references_rest_pager(transport: str = "rest"): pager = client.list_address_group_references(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_organization_security_profile_group_service.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_organization_security_profile_group_service.py index 3ecf09474077..1906eb839391 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_organization_security_profile_group_service.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_organization_security_profile_group_service.py @@ -1908,6 +1908,9 @@ def test_list_security_profile_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2002,6 +2005,8 @@ async def test_list_security_profile_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3932,6 +3937,9 @@ def test_list_security_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4026,6 +4034,8 @@ async def test_list_security_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5881,6 +5891,9 @@ def test_list_security_profile_groups_rest_pager(transport: str = "rest"): pager = client.list_security_profile_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6946,6 +6959,9 @@ def test_list_security_profiles_rest_pager(transport: str = "rest"): pager = client.list_security_profiles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_security_profile_group_service.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_security_profile_group_service.py index b93e9a63fcfc..97c150814578 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_security_profile_group_service.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_security_profile_group_service.py @@ -1859,6 +1859,9 @@ def test_list_security_profile_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1953,6 +1956,8 @@ async def test_list_security_profile_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3883,6 +3888,9 @@ def test_list_security_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3977,6 +3985,8 @@ async def test_list_security_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5832,6 +5842,9 @@ def test_list_security_profile_groups_rest_pager(transport: str = "rest"): pager = client.list_security_profile_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6897,6 +6910,9 @@ def test_list_security_profiles_rest_pager(transport: str = "rest"): pager = client.list_security_profiles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_sse_realm_service.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_sse_realm_service.py index ee26b4beef03..845f58b6dd19 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_sse_realm_service.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1/test_sse_realm_service.py @@ -1743,6 +1743,9 @@ def test_list_sac_realms_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_realm.SACRealm) for i in results) @@ -1831,6 +1834,8 @@ async def test_list_sac_realms_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3305,6 +3310,9 @@ def test_list_sac_attachments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_realm.SACAttachment) for i in results) @@ -3397,6 +3405,8 @@ async def test_list_sac_attachments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4774,6 +4784,9 @@ def test_list_sac_realms_rest_pager(transport: str = "rest"): pager = client.list_sac_realms(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_realm.SACRealm) for i in results) @@ -5614,6 +5627,9 @@ def test_list_sac_attachments_rest_pager(transport: str = "rest"): pager = client.list_sac_attachments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_realm.SACAttachment) for i in results) diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_dns_threat_detector_service.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_dns_threat_detector_service.py index 41d5b28acb7d..bf75fce9d2aa 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_dns_threat_detector_service.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_dns_threat_detector_service.py @@ -1811,6 +1811,9 @@ def test_list_dns_threat_detectors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1905,6 +1908,8 @@ async def test_list_dns_threat_detectors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3663,6 +3668,9 @@ def test_list_dns_threat_detectors_rest_pager(transport: str = "rest"): pager = client.list_dns_threat_detectors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_firewall_activation.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_firewall_activation.py index 519217c695e4..6711c3e485a3 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_firewall_activation.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_firewall_activation.py @@ -1785,6 +1785,9 @@ def test_list_firewall_endpoints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, firewall_activation.FirewallEndpoint) for i in results) @@ -1877,6 +1880,8 @@ async def test_list_firewall_endpoints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3806,6 +3811,9 @@ def test_list_firewall_endpoint_associations_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3901,6 +3909,8 @@ async def test_list_firewall_endpoint_associations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5694,6 +5704,9 @@ def test_list_firewall_endpoints_rest_pager(transport: str = "rest"): pager = client.list_firewall_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, firewall_activation.FirewallEndpoint) for i in results) @@ -6768,6 +6781,9 @@ def test_list_firewall_endpoint_associations_rest_pager(transport: str = "rest") pager = client.list_firewall_endpoint_associations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_intercept.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_intercept.py index 0090974f7574..18fcba1af184 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_intercept.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_intercept.py @@ -1695,6 +1695,9 @@ def test_list_intercept_endpoint_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intercept.InterceptEndpointGroup) for i in results) @@ -1787,6 +1790,8 @@ async def test_list_intercept_endpoint_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3702,6 +3707,9 @@ def test_list_intercept_endpoint_group_associations_pager(transport_name: str = assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3798,6 +3806,8 @@ async def test_list_intercept_endpoint_group_associations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5722,6 +5732,9 @@ def test_list_intercept_deployment_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intercept.InterceptDeploymentGroup) for i in results) @@ -5814,6 +5827,8 @@ async def test_list_intercept_deployment_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7731,6 +7746,9 @@ def test_list_intercept_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intercept.InterceptDeployment) for i in results) @@ -7823,6 +7841,8 @@ async def test_list_intercept_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9578,6 +9598,9 @@ def test_list_intercept_endpoint_groups_rest_pager(transport: str = "rest"): pager = client.list_intercept_endpoint_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intercept.InterceptEndpointGroup) for i in results) @@ -10673,6 +10696,9 @@ def test_list_intercept_endpoint_group_associations_rest_pager(transport: str = request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11767,6 +11793,9 @@ def test_list_intercept_deployment_groups_rest_pager(transport: str = "rest"): pager = client.list_intercept_deployment_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intercept.InterceptDeploymentGroup) for i in results) @@ -12855,6 +12884,9 @@ def test_list_intercept_deployments_rest_pager(transport: str = "rest"): pager = client.list_intercept_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, intercept.InterceptDeployment) for i in results) diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_mirroring.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_mirroring.py index 4ada030e95fa..47f82507cf67 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_mirroring.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_mirroring.py @@ -1695,6 +1695,9 @@ def test_list_mirroring_endpoint_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mirroring.MirroringEndpointGroup) for i in results) @@ -1787,6 +1790,8 @@ async def test_list_mirroring_endpoint_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3706,6 +3711,9 @@ def test_list_mirroring_endpoint_group_associations_pager(transport_name: str = assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3802,6 +3810,8 @@ async def test_list_mirroring_endpoint_group_associations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5726,6 +5736,9 @@ def test_list_mirroring_deployment_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mirroring.MirroringDeploymentGroup) for i in results) @@ -5818,6 +5831,8 @@ async def test_list_mirroring_deployment_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7735,6 +7750,9 @@ def test_list_mirroring_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mirroring.MirroringDeployment) for i in results) @@ -7827,6 +7845,8 @@ async def test_list_mirroring_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9582,6 +9602,9 @@ def test_list_mirroring_endpoint_groups_rest_pager(transport: str = "rest"): pager = client.list_mirroring_endpoint_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mirroring.MirroringEndpointGroup) for i in results) @@ -10677,6 +10700,9 @@ def test_list_mirroring_endpoint_group_associations_rest_pager(transport: str = request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11771,6 +11797,9 @@ def test_list_mirroring_deployment_groups_rest_pager(transport: str = "rest"): pager = client.list_mirroring_deployment_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mirroring.MirroringDeploymentGroup) for i in results) @@ -12859,6 +12888,9 @@ def test_list_mirroring_deployments_rest_pager(transport: str = "rest"): pager = client.list_mirroring_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mirroring.MirroringDeployment) for i in results) diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_network_security.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_network_security.py index 8593999c9031..779ef9ddfba0 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_network_security.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_network_security.py @@ -1798,6 +1798,9 @@ def test_list_authorization_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1892,6 +1895,8 @@ async def test_list_authorization_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3811,6 +3816,9 @@ def test_list_backend_authentication_configs_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3906,6 +3914,8 @@ async def test_list_backend_authentication_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5876,6 +5886,9 @@ def test_list_server_tls_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, server_tls_policy.ServerTlsPolicy) for i in results) @@ -5968,6 +5981,8 @@ async def test_list_server_tls_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7851,6 +7866,9 @@ def test_list_client_tls_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, client_tls_policy.ClientTlsPolicy) for i in results) @@ -7943,6 +7961,8 @@ async def test_list_client_tls_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9836,6 +9856,9 @@ def test_list_gateway_security_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -9931,6 +9954,8 @@ async def test_list_gateway_security_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11849,6 +11874,9 @@ def test_list_gateway_security_policy_rules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11944,6 +11972,8 @@ async def test_list_gateway_security_policy_rules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13866,6 +13896,9 @@ def test_list_url_lists_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, url_list.UrlList) for i in results) @@ -13954,6 +13987,8 @@ async def test_list_url_lists_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15751,6 +15786,9 @@ def test_list_tls_inspection_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -15845,6 +15883,8 @@ async def test_list_tls_inspection_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17783,6 +17823,9 @@ def test_list_authz_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, authz_policy.AuthzPolicy) for i in results) @@ -17875,6 +17918,8 @@ async def test_list_authz_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -19587,6 +19632,9 @@ def test_list_authorization_policies_rest_pager(transport: str = "rest"): pager = client.list_authorization_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -20644,6 +20692,9 @@ def test_list_backend_authentication_configs_rest_pager(transport: str = "rest") pager = client.list_backend_authentication_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -21720,6 +21771,9 @@ def test_list_server_tls_policies_rest_pager(transport: str = "rest"): pager = client.list_server_tls_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, server_tls_policy.ServerTlsPolicy) for i in results) @@ -22751,6 +22805,9 @@ def test_list_client_tls_policies_rest_pager(transport: str = "rest"): pager = client.list_client_tls_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, client_tls_policy.ClientTlsPolicy) for i in results) @@ -23789,6 +23846,9 @@ def test_list_gateway_security_policies_rest_pager(transport: str = "rest"): pager = client.list_gateway_security_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -24864,6 +24924,9 @@ def test_list_gateway_security_policy_rules_rest_pager(transport: str = "rest"): pager = client.list_gateway_security_policy_rules(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -25903,6 +25966,9 @@ def test_list_url_lists_rest_pager(transport: str = "rest"): pager = client.list_url_lists(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, url_list.UrlList) for i in results) @@ -26907,6 +26973,9 @@ def test_list_tls_inspection_policies_rest_pager(transport: str = "rest"): pager = client.list_tls_inspection_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -27954,6 +28023,9 @@ def test_list_authz_policies_rest_pager(transport: str = "rest"): pager = client.list_authz_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, authz_policy.AuthzPolicy) for i in results) diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_organization_security_profile_group_service.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_organization_security_profile_group_service.py index c6422b8298b2..8a92d5ab3459 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_organization_security_profile_group_service.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_organization_security_profile_group_service.py @@ -1908,6 +1908,9 @@ def test_list_security_profile_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2002,6 +2005,8 @@ async def test_list_security_profile_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3932,6 +3937,9 @@ def test_list_security_profiles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4026,6 +4034,8 @@ async def test_list_security_profiles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5881,6 +5891,9 @@ def test_list_security_profile_groups_rest_pager(transport: str = "rest"): pager = client.list_security_profile_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6946,6 +6959,9 @@ def test_list_security_profiles_rest_pager(transport: str = "rest"): pager = client.list_security_profiles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_sse_gateway_service.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_sse_gateway_service.py index 95e8b5c37df4..f0a92e284e3c 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_sse_gateway_service.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_sse_gateway_service.py @@ -1783,6 +1783,9 @@ def test_list_partner_sse_gateways_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_gateway.PartnerSSEGateway) for i in results) @@ -1875,6 +1878,8 @@ async def test_list_partner_sse_gateways_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3842,6 +3847,9 @@ def test_list_sse_gateway_references_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_gateway.SSEGatewayReference) for i in results) @@ -3934,6 +3942,8 @@ async def test_list_sse_gateway_references_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4598,6 +4608,9 @@ def test_list_partner_sse_gateways_rest_pager(transport: str = "rest"): pager = client.list_partner_sse_gateways(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_gateway.PartnerSSEGateway) for i in results) @@ -5657,6 +5670,9 @@ def test_list_sse_gateway_references_rest_pager(transport: str = "rest"): pager = client.list_sse_gateway_references(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_gateway.SSEGatewayReference) for i in results) diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_sse_realm_service.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_sse_realm_service.py index b7be4a1f904f..b1ddf74654dd 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_sse_realm_service.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1alpha1/test_sse_realm_service.py @@ -1743,6 +1743,9 @@ def test_list_sac_realms_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_realm.SACRealm) for i in results) @@ -1831,6 +1834,8 @@ async def test_list_sac_realms_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3305,6 +3310,9 @@ def test_list_sac_attachments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_realm.SACAttachment) for i in results) @@ -3397,6 +3405,8 @@ async def test_list_sac_attachments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4940,6 +4950,9 @@ def test_list_partner_sse_realms_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_realm.PartnerSSERealm) for i in results) @@ -5032,6 +5045,8 @@ async def test_list_partner_sse_realms_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6437,6 +6452,9 @@ def test_list_sac_realms_rest_pager(transport: str = "rest"): pager = client.list_sac_realms(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_realm.SACRealm) for i in results) @@ -7280,6 +7298,9 @@ def test_list_sac_attachments_rest_pager(transport: str = "rest"): pager = client.list_sac_attachments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_realm.SACAttachment) for i in results) @@ -8136,6 +8157,9 @@ def test_list_partner_sse_realms_rest_pager(transport: str = "rest"): pager = client.list_partner_sse_realms(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, sse_realm.PartnerSSERealm) for i in results) diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1beta1/test_dns_threat_detector_service.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1beta1/test_dns_threat_detector_service.py index 90d600924cbd..c447c6b24d8e 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1beta1/test_dns_threat_detector_service.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1beta1/test_dns_threat_detector_service.py @@ -1811,6 +1811,9 @@ def test_list_dns_threat_detectors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1905,6 +1908,8 @@ async def test_list_dns_threat_detectors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3663,6 +3668,9 @@ def test_list_dns_threat_detectors_rest_pager(transport: str = "rest"): pager = client.list_dns_threat_detectors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1beta1/test_network_security.py b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1beta1/test_network_security.py index 2c1d7f4b17f4..535660b7d986 100644 --- a/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1beta1/test_network_security.py +++ b/packages/google-cloud-network-security/tests/unit/gapic/network_security_v1beta1/test_network_security.py @@ -1776,6 +1776,9 @@ def test_list_authorization_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1870,6 +1873,8 @@ async def test_list_authorization_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3771,6 +3776,9 @@ def test_list_server_tls_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, server_tls_policy.ServerTlsPolicy) for i in results) @@ -3863,6 +3871,8 @@ async def test_list_server_tls_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5746,6 +5756,9 @@ def test_list_client_tls_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, client_tls_policy.ClientTlsPolicy) for i in results) @@ -5838,6 +5851,8 @@ async def test_list_client_tls_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7578,6 +7593,9 @@ def test_list_authorization_policies_rest_pager(transport: str = "rest"): pager = client.list_authorization_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -8620,6 +8638,9 @@ def test_list_server_tls_policies_rest_pager(transport: str = "rest"): pager = client.list_server_tls_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, server_tls_policy.ServerTlsPolicy) for i in results) @@ -9651,6 +9672,9 @@ def test_list_client_tls_policies_rest_pager(transport: str = "rest"): pager = client.list_client_tls_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, client_tls_policy.ClientTlsPolicy) for i in results) diff --git a/packages/google-cloud-network-services/noxfile.py b/packages/google-cloud-network-services/noxfile.py index 7061cef385ac..57ae8aab8aae 100644 --- a/packages/google-cloud-network-services/noxfile.py +++ b/packages/google-cloud-network-services/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-network-services/testing/constraints-3.15.txt b/packages/google-cloud-network-services/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-network-services/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-network-services/tests/unit/gapic/network_services_v1/test_dep_service.py b/packages/google-cloud-network-services/tests/unit/gapic/network_services_v1/test_dep_service.py index 9d362799288a..85b62171a871 100644 --- a/packages/google-cloud-network-services/tests/unit/gapic/network_services_v1/test_dep_service.py +++ b/packages/google-cloud-network-services/tests/unit/gapic/network_services_v1/test_dep_service.py @@ -1705,6 +1705,9 @@ def test_list_lb_traffic_extensions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dep.LbTrafficExtension) for i in results) @@ -1797,6 +1800,8 @@ async def test_list_lb_traffic_extensions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3692,6 +3697,9 @@ def test_list_lb_route_extensions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dep.LbRouteExtension) for i in results) @@ -3784,6 +3792,8 @@ async def test_list_lb_route_extensions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5677,6 +5687,9 @@ def test_list_lb_edge_extensions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dep.LbEdgeExtension) for i in results) @@ -5769,6 +5782,8 @@ async def test_list_lb_edge_extensions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7658,6 +7673,9 @@ def test_list_authz_extensions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dep.AuthzExtension) for i in results) @@ -7750,6 +7768,8 @@ async def test_list_authz_extensions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9506,6 +9526,9 @@ def test_list_lb_traffic_extensions_rest_pager(transport: str = "rest"): pager = client.list_lb_traffic_extensions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dep.LbTrafficExtension) for i in results) @@ -10563,6 +10586,9 @@ def test_list_lb_route_extensions_rest_pager(transport: str = "rest"): pager = client.list_lb_route_extensions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dep.LbRouteExtension) for i in results) @@ -11619,6 +11645,9 @@ def test_list_lb_edge_extensions_rest_pager(transport: str = "rest"): pager = client.list_lb_edge_extensions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dep.LbEdgeExtension) for i in results) @@ -12675,6 +12704,9 @@ def test_list_authz_extensions_rest_pager(transport: str = "rest"): pager = client.list_authz_extensions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dep.AuthzExtension) for i in results) diff --git a/packages/google-cloud-network-services/tests/unit/gapic/network_services_v1/test_network_services.py b/packages/google-cloud-network-services/tests/unit/gapic/network_services_v1/test_network_services.py index e4538e8eb636..86be47f23e2d 100644 --- a/packages/google-cloud-network-services/tests/unit/gapic/network_services_v1/test_network_services.py +++ b/packages/google-cloud-network-services/tests/unit/gapic/network_services_v1/test_network_services.py @@ -1794,6 +1794,9 @@ def test_list_endpoint_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, endpoint_policy.EndpointPolicy) for i in results) @@ -1886,6 +1889,8 @@ async def test_list_endpoint_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3788,6 +3793,9 @@ def test_list_wasm_plugin_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, extensibility.WasmPluginVersion) for i in results) @@ -3880,6 +3888,8 @@ async def test_list_wasm_plugin_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5426,6 +5436,9 @@ def test_list_wasm_plugins_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, extensibility.WasmPlugin) for i in results) @@ -5518,6 +5531,8 @@ async def test_list_wasm_plugins_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7350,6 +7365,9 @@ def test_list_gateways_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gateway.Gateway) for i in results) @@ -7438,6 +7456,8 @@ async def test_list_gateways_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9268,6 +9288,9 @@ def test_list_grpc_routes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, grpc_route.GrpcRoute) for i in results) @@ -9356,6 +9379,8 @@ async def test_list_grpc_routes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11196,6 +11221,9 @@ def test_list_http_routes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, http_route.HttpRoute) for i in results) @@ -11284,6 +11312,8 @@ async def test_list_http_routes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13120,6 +13150,9 @@ def test_list_tcp_routes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tcp_route.TcpRoute) for i in results) @@ -13208,6 +13241,8 @@ async def test_list_tcp_routes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14994,6 +15029,9 @@ def test_list_tls_routes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tls_route.TlsRoute) for i in results) @@ -15082,6 +15120,8 @@ async def test_list_tls_routes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16895,6 +16935,9 @@ def test_list_service_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service_binding.ServiceBinding) for i in results) @@ -16987,6 +17030,8 @@ async def test_list_service_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18850,6 +18895,9 @@ def test_list_meshes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mesh.Mesh) for i in results) @@ -18938,6 +18986,8 @@ async def test_list_meshes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20741,6 +20791,9 @@ def test_list_service_lb_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service_lb_policy.ServiceLbPolicy) for i in results) @@ -20833,6 +20886,8 @@ async def test_list_service_lb_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -23445,6 +23500,9 @@ def test_list_gateway_route_views_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, route_view.GatewayRouteView) for i in results) @@ -23537,6 +23595,8 @@ async def test_list_gateway_route_views_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -23994,6 +24054,9 @@ def test_list_mesh_route_views_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, route_view.MeshRouteView) for i in results) @@ -24086,6 +24149,8 @@ async def test_list_mesh_route_views_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -24540,6 +24605,9 @@ def test_list_agent_gateways_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent_gateway.AgentGateway) for i in results) @@ -24632,6 +24700,8 @@ async def test_list_agent_gateways_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -26419,6 +26489,9 @@ def test_list_endpoint_policies_rest_pager(transport: str = "rest"): pager = client.list_endpoint_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, endpoint_policy.EndpointPolicy) for i in results) @@ -27449,6 +27522,9 @@ def test_list_wasm_plugin_versions_rest_pager(transport: str = "rest"): pager = client.list_wasm_plugin_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, extensibility.WasmPluginVersion) for i in results) @@ -28296,6 +28372,9 @@ def test_list_wasm_plugins_rest_pager(transport: str = "rest"): pager = client.list_wasm_plugins(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, extensibility.WasmPlugin) for i in results) @@ -29307,6 +29386,9 @@ def test_list_gateways_rest_pager(transport: str = "rest"): pager = client.list_gateways(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gateway.Gateway) for i in results) @@ -30297,6 +30379,9 @@ def test_list_grpc_routes_rest_pager(transport: str = "rest"): pager = client.list_grpc_routes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, grpc_route.GrpcRoute) for i in results) @@ -31305,6 +31390,9 @@ def test_list_http_routes_rest_pager(transport: str = "rest"): pager = client.list_http_routes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, http_route.HttpRoute) for i in results) @@ -32319,6 +32407,9 @@ def test_list_tcp_routes_rest_pager(transport: str = "rest"): pager = client.list_tcp_routes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tcp_route.TcpRoute) for i in results) @@ -33321,6 +33412,9 @@ def test_list_tls_routes_rest_pager(transport: str = "rest"): pager = client.list_tls_routes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tls_route.TlsRoute) for i in results) @@ -34329,6 +34423,9 @@ def test_list_service_bindings_rest_pager(transport: str = "rest"): pager = client.list_service_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service_binding.ServiceBinding) for i in results) @@ -35347,6 +35444,9 @@ def test_list_meshes_rest_pager(transport: str = "rest"): pager = client.list_meshes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mesh.Mesh) for i in results) @@ -36339,6 +36439,9 @@ def test_list_service_lb_policies_rest_pager(transport: str = "rest"): pager = client.list_service_lb_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service_lb_policy.ServiceLbPolicy) for i in results) @@ -37741,6 +37844,9 @@ def test_list_gateway_route_views_rest_pager(transport: str = "rest"): pager = client.list_gateway_route_views(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, route_view.GatewayRouteView) for i in results) @@ -38002,6 +38108,9 @@ def test_list_mesh_route_views_rest_pager(transport: str = "rest"): pager = client.list_mesh_route_views(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, route_view.MeshRouteView) for i in results) @@ -38264,6 +38373,9 @@ def test_list_agent_gateways_rest_pager(transport: str = "rest"): pager = client.list_agent_gateways(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, agent_gateway.AgentGateway) for i in results) diff --git a/packages/google-cloud-notebooks/noxfile.py b/packages/google-cloud-notebooks/noxfile.py index 215850a5af4b..97525eaa0ca4 100644 --- a/packages/google-cloud-notebooks/noxfile.py +++ b/packages/google-cloud-notebooks/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-notebooks/testing/constraints-3.15.txt b/packages/google-cloud-notebooks/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-notebooks/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v1/test_managed_notebook_service.py b/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v1/test_managed_notebook_service.py index fe7a75835244..aae7e8b8cd54 100644 --- a/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v1/test_managed_notebook_service.py +++ b/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v1/test_managed_notebook_service.py @@ -1747,6 +1747,9 @@ def test_list_runtimes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, runtime.Runtime) for i in results) @@ -1835,6 +1838,8 @@ async def test_list_runtimes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v1/test_notebook_service.py b/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v1/test_notebook_service.py index 97953af079cb..0cb0d602f2a5 100644 --- a/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v1/test_notebook_service.py +++ b/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v1/test_notebook_service.py @@ -1721,6 +1721,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) @@ -1809,6 +1812,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7934,6 +7939,9 @@ def test_list_environments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -8026,6 +8034,8 @@ async def test_list_environments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9514,6 +9524,9 @@ def test_list_schedules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, schedule.Schedule) for i in results) @@ -9602,6 +9615,8 @@ async def test_list_schedules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11304,6 +11319,9 @@ def test_list_executions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, execution.Execution) for i in results) @@ -11392,6 +11410,8 @@ async def test_list_executions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v1beta1/test_notebook_service.py b/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v1beta1/test_notebook_service.py index 90349faa2aa6..1567f5551ef1 100644 --- a/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v1beta1/test_notebook_service.py +++ b/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v1beta1/test_notebook_service.py @@ -1657,6 +1657,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) @@ -1745,6 +1748,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5761,6 +5766,9 @@ def test_list_environments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) @@ -5853,6 +5861,8 @@ async def test_list_environments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6869,6 +6879,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) @@ -8879,6 +8892,9 @@ def test_list_environments_rest_pager(transport: str = "rest"): pager = client.list_environments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environment.Environment) for i in results) diff --git a/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v2/test_notebook_service.py b/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v2/test_notebook_service.py index 32a2efc44346..3ac020d81927 100644 --- a/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v2/test_notebook_service.py +++ b/packages/google-cloud-notebooks/tests/unit/gapic/notebooks_v2/test_notebook_service.py @@ -1746,6 +1746,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) @@ -1834,6 +1837,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5382,6 +5387,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) diff --git a/packages/google-cloud-optimization/noxfile.py b/packages/google-cloud-optimization/noxfile.py index b023be356097..dcbaabe4bf3b 100644 --- a/packages/google-cloud-optimization/noxfile.py +++ b/packages/google-cloud-optimization/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-optimization/testing/constraints-3.15.txt b/packages/google-cloud-optimization/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-optimization/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-oracledatabase/noxfile.py b/packages/google-cloud-oracledatabase/noxfile.py index 22a47f0fa4ff..e0a58dbb3e43 100644 --- a/packages/google-cloud-oracledatabase/noxfile.py +++ b/packages/google-cloud-oracledatabase/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-oracledatabase/testing/constraints-3.15.txt b/packages/google-cloud-oracledatabase/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-oracledatabase/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 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 b887f4208153..a8de80d4729d 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 @@ -1798,6 +1798,9 @@ def test_list_cloud_exadata_infrastructures_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1892,6 +1895,8 @@ async def test_list_cloud_exadata_infrastructures_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3808,6 +3813,9 @@ def test_list_cloud_vm_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vm_cluster.CloudVmCluster) for i in results) @@ -3900,6 +3908,8 @@ async def test_list_cloud_vm_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5452,6 +5462,9 @@ def test_list_entitlements_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entitlement.Entitlement) for i in results) @@ -5544,6 +5557,8 @@ async def test_list_entitlements_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5974,6 +5989,9 @@ def test_list_db_servers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, db_server.DbServer) for i in results) @@ -6062,6 +6080,8 @@ async def test_list_db_servers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6490,6 +6510,9 @@ def test_list_db_nodes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, db_node.DbNode) for i in results) @@ -6578,6 +6601,8 @@ async def test_list_db_nodes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7010,6 +7035,9 @@ def test_list_gi_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gi_version.GiVersion) for i in results) @@ -7098,6 +7126,8 @@ async def test_list_gi_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7548,6 +7578,9 @@ def test_list_minor_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, minor_version.MinorVersion) for i in results) @@ -7640,6 +7673,8 @@ async def test_list_minor_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8095,6 +8130,9 @@ def test_list_db_system_shapes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, db_system_shape.DbSystemShape) for i in results) @@ -8187,6 +8225,8 @@ async def test_list_db_system_shapes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8650,6 +8690,9 @@ def test_list_autonomous_databases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -8744,6 +8787,8 @@ async def test_list_autonomous_databases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11429,6 +11474,9 @@ def test_list_autonomous_db_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11523,6 +11571,8 @@ async def test_list_autonomous_db_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11982,6 +12032,9 @@ def test_list_autonomous_database_character_sets_pager(transport_name: str = "gr assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -12079,6 +12132,8 @@ async def test_list_autonomous_database_character_sets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12543,6 +12598,9 @@ def test_list_autonomous_database_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -12638,6 +12696,8 @@ async def test_list_autonomous_database_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14868,6 +14928,9 @@ def test_list_odb_networks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, odb_network.OdbNetwork) for i in results) @@ -14960,6 +15023,8 @@ async def test_list_odb_networks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16454,6 +16519,9 @@ def test_list_odb_subnets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, odb_subnet.OdbSubnet) for i in results) @@ -16542,6 +16610,8 @@ async def test_list_odb_subnets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18047,6 +18117,9 @@ def test_list_exadb_vm_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, exadb_vm_cluster.ExadbVmCluster) for i in results) @@ -18139,6 +18212,8 @@ async def test_list_exadb_vm_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20412,6 +20487,9 @@ def test_list_exascale_db_storage_vaults_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -20507,6 +20585,8 @@ async def test_list_exascale_db_storage_vaults_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -22074,6 +22154,9 @@ def test_list_db_system_initial_storage_sizes_pager(transport_name: str = "grpc" assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -22169,6 +22252,8 @@ async def test_list_db_system_initial_storage_sizes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -22606,6 +22691,9 @@ def test_list_databases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, database.Database) for i in results) @@ -22694,6 +22782,8 @@ async def test_list_databases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -23545,6 +23635,9 @@ def test_list_pluggable_databases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, pluggable_database.PluggableDatabase) for i in results) @@ -23637,6 +23730,8 @@ async def test_list_pluggable_databases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -24426,6 +24521,9 @@ def test_list_db_systems_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, db_system.DbSystem) for i in results) @@ -24514,6 +24612,8 @@ async def test_list_db_systems_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -26001,6 +26101,9 @@ def test_list_goldengate_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -26095,6 +26198,8 @@ async def test_list_goldengate_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -28355,6 +28460,9 @@ def test_list_goldengate_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -28449,6 +28557,8 @@ async def test_list_goldengate_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -30019,6 +30129,9 @@ def test_list_goldengate_deployment_versions_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -30114,6 +30227,8 @@ async def test_list_goldengate_deployment_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -30590,6 +30705,9 @@ def test_list_goldengate_deployment_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -30685,6 +30803,8 @@ async def test_list_goldengate_deployment_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -31155,6 +31275,9 @@ def test_list_goldengate_deployment_environments_pager(transport_name: str = "gr assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -31252,6 +31375,8 @@ async def test_list_goldengate_deployment_environments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -31728,6 +31853,9 @@ def test_list_goldengate_connection_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -31823,6 +31951,8 @@ async def test_list_goldengate_connection_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -32262,6 +32392,9 @@ def test_list_db_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, db_version.DbVersion) for i in results) @@ -32350,6 +32483,8 @@ async def test_list_db_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -32805,6 +32940,9 @@ def test_list_database_character_sets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -32899,6 +33037,8 @@ async def test_list_database_character_sets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -33375,6 +33515,9 @@ def test_list_goldengate_connection_assignments_pager(transport_name: str = "grp assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -33472,6 +33615,8 @@ async def test_list_goldengate_connection_assignments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -35281,6 +35426,9 @@ def test_list_cloud_exadata_infrastructures_rest_pager(transport: str = "rest"): pager = client.list_cloud_exadata_infrastructures(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -36382,6 +36530,9 @@ def test_list_cloud_vm_clusters_rest_pager(transport: str = "rest"): pager = client.list_cloud_vm_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vm_cluster.CloudVmCluster) for i in results) @@ -37244,6 +37395,9 @@ def test_list_entitlements_rest_pager(transport: str = "rest"): pager = client.list_entitlements(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, entitlement.Entitlement) for i in results) @@ -37504,6 +37658,9 @@ def test_list_db_servers_rest_pager(transport: str = "rest"): pager = client.list_db_servers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, db_server.DbServer) for i in results) @@ -37764,6 +37921,9 @@ def test_list_db_nodes_rest_pager(transport: str = "rest"): pager = client.list_db_nodes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, db_node.DbNode) for i in results) @@ -38023,6 +38183,9 @@ def test_list_gi_versions_rest_pager(transport: str = "rest"): pager = client.list_gi_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gi_version.GiVersion) for i in results) @@ -38289,6 +38452,9 @@ def test_list_minor_versions_rest_pager(transport: str = "rest"): pager = client.list_minor_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, minor_version.MinorVersion) for i in results) @@ -38552,6 +38718,9 @@ def test_list_db_system_shapes_rest_pager(transport: str = "rest"): pager = client.list_db_system_shapes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, db_system_shape.DbSystemShape) for i in results) @@ -38819,6 +38988,9 @@ def test_list_autonomous_databases_rest_pager(transport: str = "rest"): pager = client.list_autonomous_databases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -40293,6 +40465,9 @@ def test_list_autonomous_db_versions_rest_pager(transport: str = "rest"): pager = client.list_autonomous_db_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -40573,6 +40748,9 @@ def test_list_autonomous_database_character_sets_rest_pager(transport: str = "re pager = client.list_autonomous_database_character_sets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -40850,6 +41028,9 @@ def test_list_autonomous_database_backups_rest_pager(transport: str = "rest"): pager = client.list_autonomous_database_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -42048,6 +42229,9 @@ def test_list_odb_networks_rest_pager(transport: str = "rest"): pager = client.list_odb_networks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, odb_network.OdbNetwork) for i in results) @@ -42897,6 +43081,9 @@ def test_list_odb_subnets_rest_pager(transport: str = "rest"): pager = client.list_odb_subnets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, odb_subnet.OdbSubnet) for i in results) @@ -43745,6 +43932,9 @@ def test_list_exadb_vm_clusters_rest_pager(transport: str = "rest"): pager = client.list_exadb_vm_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, exadb_vm_cluster.ExadbVmCluster) for i in results) @@ -45016,6 +45206,9 @@ def test_list_exascale_db_storage_vaults_rest_pager(transport: str = "rest"): pager = client.list_exascale_db_storage_vaults(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -45909,6 +46102,9 @@ def test_list_db_system_initial_storage_sizes_rest_pager(transport: str = "rest" pager = client.list_db_system_initial_storage_sizes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -46169,6 +46365,9 @@ def test_list_databases_rest_pager(transport: str = "rest"): pager = client.list_databases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, database.Database) for i in results) @@ -46614,6 +46813,9 @@ def test_list_pluggable_databases_rest_pager(transport: str = "rest"): pager = client.list_pluggable_databases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, pluggable_database.PluggableDatabase) for i in results) @@ -47056,6 +47258,9 @@ def test_list_db_systems_rest_pager(transport: str = "rest"): pager = client.list_db_systems(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, db_system.DbSystem) for i in results) @@ -47902,6 +48107,9 @@ def test_list_goldengate_deployments_rest_pager(transport: str = "rest"): pager = client.list_goldengate_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -49145,6 +49353,9 @@ def test_list_goldengate_connections_rest_pager(transport: str = "rest"): pager = client.list_goldengate_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -50028,6 +50239,9 @@ def test_list_goldengate_deployment_versions_rest_pager(transport: str = "rest") pager = client.list_goldengate_deployment_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -50311,6 +50525,9 @@ def test_list_goldengate_deployment_types_rest_pager(transport: str = "rest"): pager = client.list_goldengate_deployment_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -50594,6 +50811,9 @@ def test_list_goldengate_deployment_environments_rest_pager(transport: str = "re pager = client.list_goldengate_deployment_environments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -50877,6 +51097,9 @@ def test_list_goldengate_connection_types_rest_pager(transport: str = "rest"): pager = client.list_goldengate_connection_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -51139,6 +51362,9 @@ def test_list_db_versions_rest_pager(transport: str = "rest"): pager = client.list_db_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, db_version.DbVersion) for i in results) @@ -51407,6 +51633,9 @@ def test_list_database_character_sets_rest_pager(transport: str = "rest"): pager = client.list_database_character_sets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -51691,6 +51920,9 @@ def test_list_goldengate_connection_assignments_rest_pager(transport: str = "res pager = client.list_goldengate_connection_assignments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-orchestration-airflow/noxfile.py b/packages/google-cloud-orchestration-airflow/noxfile.py index 0d1aed8f2c70..ee3316f0f47f 100644 --- a/packages/google-cloud-orchestration-airflow/noxfile.py +++ b/packages/google-cloud-orchestration-airflow/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-orchestration-airflow/testing/constraints-3.15.txt b/packages/google-cloud-orchestration-airflow/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-orchestration-airflow/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1/test_environments.py b/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1/test_environments.py index 4167b75f5709..05464fe332e7 100644 --- a/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1/test_environments.py +++ b/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1/test_environments.py @@ -2397,6 +2397,9 @@ def test_list_environments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environments.Environment) for i in results) @@ -2489,6 +2492,8 @@ async def test_list_environments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4440,6 +4445,9 @@ def test_list_workloads_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4531,6 +4539,8 @@ async def test_list_workloads_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5935,6 +5945,9 @@ def test_list_user_workloads_secrets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environments.UserWorkloadsSecret) for i in results) @@ -6027,6 +6040,8 @@ async def test_list_user_workloads_secrets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7864,6 +7879,9 @@ def test_list_user_workloads_config_maps_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environments.UserWorkloadsConfigMap) for i in results) @@ -7956,6 +7974,8 @@ async def test_list_user_workloads_config_maps_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10066,6 +10086,9 @@ def test_list_environments_rest_pager(transport: str = "rest"): pager = client.list_environments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environments.Environment) for i in results) @@ -10657,6 +10680,9 @@ def test_list_workloads_rest_pager(transport: str = "rest"): pager = client.list_workloads(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11430,6 +11456,9 @@ def test_list_user_workloads_secrets_rest_pager(transport: str = "rest"): pager = client.list_user_workloads_secrets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environments.UserWorkloadsSecret) for i in results) @@ -12372,6 +12401,9 @@ def test_list_user_workloads_config_maps_rest_pager(transport: str = "rest"): pager = client.list_user_workloads_config_maps(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environments.UserWorkloadsConfigMap) for i in results) diff --git a/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1/test_image_versions.py b/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1/test_image_versions.py index 716c5daf3443..65a8398a4fdb 100644 --- a/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1/test_image_versions.py +++ b/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1/test_image_versions.py @@ -1715,6 +1715,9 @@ def test_list_image_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, image_versions.ImageVersion) for i in results) @@ -1807,6 +1810,8 @@ async def test_list_image_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2014,6 +2019,9 @@ def test_list_image_versions_rest_pager(transport: str = "rest"): pager = client.list_image_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, image_versions.ImageVersion) for i in results) diff --git a/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1beta1/test_environments.py b/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1beta1/test_environments.py index d5c6b7a473c3..97ffc26e8f85 100644 --- a/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1beta1/test_environments.py +++ b/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1beta1/test_environments.py @@ -2400,6 +2400,9 @@ def test_list_environments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environments.Environment) for i in results) @@ -2492,6 +2495,8 @@ async def test_list_environments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4951,6 +4956,9 @@ def test_list_workloads_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5042,6 +5050,8 @@ async def test_list_workloads_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6198,6 +6208,9 @@ def test_list_user_workloads_secrets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environments.UserWorkloadsSecret) for i in results) @@ -6290,6 +6303,8 @@ async def test_list_user_workloads_secrets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8127,6 +8142,9 @@ def test_list_user_workloads_config_maps_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environments.UserWorkloadsConfigMap) for i in results) @@ -8219,6 +8237,8 @@ async def test_list_user_workloads_config_maps_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10329,6 +10349,9 @@ def test_list_environments_rest_pager(transport: str = "rest"): pager = client.list_environments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environments.Environment) for i in results) @@ -11083,6 +11106,9 @@ def test_list_workloads_rest_pager(transport: str = "rest"): pager = client.list_workloads(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11734,6 +11760,9 @@ def test_list_user_workloads_secrets_rest_pager(transport: str = "rest"): pager = client.list_user_workloads_secrets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environments.UserWorkloadsSecret) for i in results) @@ -12676,6 +12705,9 @@ def test_list_user_workloads_config_maps_rest_pager(transport: str = "rest"): pager = client.list_user_workloads_config_maps(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, environments.UserWorkloadsConfigMap) for i in results) diff --git a/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1beta1/test_image_versions.py b/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1beta1/test_image_versions.py index 3abcde1c199d..1193e856ea54 100644 --- a/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1beta1/test_image_versions.py +++ b/packages/google-cloud-orchestration-airflow/tests/unit/gapic/service_v1beta1/test_image_versions.py @@ -1715,6 +1715,9 @@ def test_list_image_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, image_versions.ImageVersion) for i in results) @@ -1807,6 +1810,8 @@ async def test_list_image_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2014,6 +2019,9 @@ def test_list_image_versions_rest_pager(transport: str = "rest"): pager = client.list_image_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, image_versions.ImageVersion) for i in results) diff --git a/packages/google-cloud-org-policy/noxfile.py b/packages/google-cloud-org-policy/noxfile.py index 6cf84cb47c03..bb01b87696fd 100644 --- a/packages/google-cloud-org-policy/noxfile.py +++ b/packages/google-cloud-org-policy/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-org-policy/testing/constraints-3.15.txt b/packages/google-cloud-org-policy/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-org-policy/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-org-policy/tests/unit/gapic/orgpolicy_v2/test_org_policy.py b/packages/google-cloud-org-policy/tests/unit/gapic/orgpolicy_v2/test_org_policy.py index 0ec48246ed6c..720371a42e3e 100644 --- a/packages/google-cloud-org-policy/tests/unit/gapic/orgpolicy_v2/test_org_policy.py +++ b/packages/google-cloud-org-policy/tests/unit/gapic/orgpolicy_v2/test_org_policy.py @@ -1660,6 +1660,9 @@ def test_list_constraints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, constraint.Constraint) for i in results) @@ -1748,6 +1751,8 @@ async def test_list_constraints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2176,6 +2181,9 @@ def test_list_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, orgpolicy.Policy) for i in results) @@ -2264,6 +2272,8 @@ async def test_list_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5462,6 +5472,9 @@ def test_list_custom_constraints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, constraint.CustomConstraint) for i in results) @@ -5554,6 +5567,8 @@ async def test_list_custom_constraints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6187,6 +6202,9 @@ def test_list_constraints_rest_pager(transport: str = "rest"): pager = client.list_constraints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, constraint.Constraint) for i in results) @@ -6437,6 +6455,9 @@ def test_list_policies_rest_pager(transport: str = "rest"): pager = client.list_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, orgpolicy.Policy) for i in results) @@ -8140,6 +8161,9 @@ def test_list_custom_constraints_rest_pager(transport: str = "rest"): pager = client.list_custom_constraints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, constraint.CustomConstraint) for i in results) diff --git a/packages/google-cloud-os-config/noxfile.py b/packages/google-cloud-os-config/noxfile.py index 5a23e3023a8b..0a90318cc202 100644 --- a/packages/google-cloud-os-config/noxfile.py +++ b/packages/google-cloud-os-config/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-os-config/testing/constraints-3.15.txt b/packages/google-cloud-os-config/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-os-config/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-os-config/tests/unit/gapic/osconfig_v1/test_os_config_service.py b/packages/google-cloud-os-config/tests/unit/gapic/osconfig_v1/test_os_config_service.py index 6cd822121c19..1a1d8e3ad385 100644 --- a/packages/google-cloud-os-config/tests/unit/gapic/osconfig_v1/test_os_config_service.py +++ b/packages/google-cloud-os-config/tests/unit/gapic/osconfig_v1/test_os_config_service.py @@ -2636,6 +2636,9 @@ def test_list_patch_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, patch_jobs.PatchJob) for i in results) @@ -2724,6 +2727,8 @@ async def test_list_patch_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3179,6 +3184,9 @@ def test_list_patch_job_instance_details_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, patch_jobs.PatchJobInstanceDetails) for i in results) @@ -3271,6 +3279,8 @@ async def test_list_patch_job_instance_details_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4453,6 +4463,9 @@ def test_list_patch_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, patch_deployments.PatchDeployment) for i in results) @@ -4545,6 +4558,8 @@ async def test_list_patch_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6671,6 +6686,9 @@ def test_list_patch_jobs_rest_pager(transport: str = "rest"): pager = client.list_patch_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, patch_jobs.PatchJob) for i in results) @@ -6938,6 +6956,9 @@ def test_list_patch_job_instance_details_rest_pager(transport: str = "rest"): pager = client.list_patch_job_instance_details(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, patch_jobs.PatchJobInstanceDetails) for i in results) @@ -7594,6 +7615,9 @@ def test_list_patch_deployments_rest_pager(transport: str = "rest"): pager = client.list_patch_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, patch_deployments.PatchDeployment) for i in results) diff --git a/packages/google-cloud-os-config/tests/unit/gapic/osconfig_v1/test_os_config_zonal_service.py b/packages/google-cloud-os-config/tests/unit/gapic/osconfig_v1/test_os_config_zonal_service.py index 54e094026d0c..e659b5dd61c1 100644 --- a/packages/google-cloud-os-config/tests/unit/gapic/osconfig_v1/test_os_config_zonal_service.py +++ b/packages/google-cloud-os-config/tests/unit/gapic/osconfig_v1/test_os_config_zonal_service.py @@ -2924,6 +2924,9 @@ def test_list_os_policy_assignments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3018,6 +3021,8 @@ async def test_list_os_policy_assignments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3483,6 +3488,9 @@ def test_list_os_policy_assignment_revisions_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3577,6 +3585,8 @@ async def test_list_os_policy_assignment_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4752,6 +4762,9 @@ def test_list_os_policy_assignment_reports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4847,6 +4860,8 @@ async def test_list_os_policy_assignment_reports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5606,6 +5621,9 @@ def test_list_inventories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, inventory.Inventory) for i in results) @@ -5694,6 +5712,8 @@ async def test_list_inventories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6504,6 +6524,9 @@ def test_list_vulnerability_reports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vulnerability.VulnerabilityReport) for i in results) @@ -6596,6 +6619,8 @@ async def test_list_vulnerability_reports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7501,6 +7526,9 @@ def test_list_os_policy_assignments_rest_pager(transport: str = "rest"): pager = client.list_os_policy_assignments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -7779,6 +7807,9 @@ def test_list_os_policy_assignment_revisions_rest_pager(transport: str = "rest") pager = client.list_os_policy_assignment_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -8442,6 +8473,9 @@ def test_list_os_policy_assignment_reports_rest_pager(transport: str = "rest"): pager = client.list_os_policy_assignment_reports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -8891,6 +8925,9 @@ def test_list_inventories_rest_pager(transport: str = "rest"): pager = client.list_inventories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, inventory.Inventory) for i in results) @@ -9345,6 +9382,9 @@ def test_list_vulnerability_reports_rest_pager(transport: str = "rest"): pager = client.list_vulnerability_reports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vulnerability.VulnerabilityReport) for i in results) diff --git a/packages/google-cloud-os-config/tests/unit/gapic/osconfig_v1alpha/test_os_config_zonal_service.py b/packages/google-cloud-os-config/tests/unit/gapic/osconfig_v1alpha/test_os_config_zonal_service.py index 24d01319d96b..af9cef84f635 100644 --- a/packages/google-cloud-os-config/tests/unit/gapic/osconfig_v1alpha/test_os_config_zonal_service.py +++ b/packages/google-cloud-os-config/tests/unit/gapic/osconfig_v1alpha/test_os_config_zonal_service.py @@ -2926,6 +2926,9 @@ def test_list_os_policy_assignments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3020,6 +3023,8 @@ async def test_list_os_policy_assignments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3485,6 +3490,9 @@ def test_list_os_policy_assignment_revisions_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3579,6 +3587,8 @@ async def test_list_os_policy_assignment_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4786,6 +4796,9 @@ def test_list_instance_os_policies_compliances_pager(transport_name: str = "grpc assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4881,6 +4894,8 @@ async def test_list_instance_os_policies_compliances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5708,6 +5723,9 @@ def test_list_os_policy_assignment_reports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5803,6 +5821,8 @@ async def test_list_os_policy_assignment_reports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6562,6 +6582,9 @@ def test_list_inventories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, inventory.Inventory) for i in results) @@ -6650,6 +6673,8 @@ async def test_list_inventories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7450,6 +7475,9 @@ def test_list_vulnerability_reports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vulnerability.VulnerabilityReport) for i in results) @@ -7542,6 +7570,8 @@ async def test_list_vulnerability_reports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8447,6 +8477,9 @@ def test_list_os_policy_assignments_rest_pager(transport: str = "rest"): pager = client.list_os_policy_assignments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -8725,6 +8758,9 @@ def test_list_os_policy_assignment_revisions_rest_pager(transport: str = "rest") pager = client.list_os_policy_assignment_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -9390,6 +9426,9 @@ def test_list_instance_os_policies_compliances_rest_pager(transport: str = "rest pager = client.list_instance_os_policies_compliances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -9870,6 +9909,9 @@ def test_list_os_policy_assignment_reports_rest_pager(transport: str = "rest"): pager = client.list_os_policy_assignment_reports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -10319,6 +10361,9 @@ def test_list_inventories_rest_pager(transport: str = "rest"): pager = client.list_inventories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, inventory.Inventory) for i in results) @@ -10773,6 +10818,9 @@ def test_list_vulnerability_reports_rest_pager(transport: str = "rest"): pager = client.list_vulnerability_reports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vulnerability.VulnerabilityReport) for i in results) diff --git a/packages/google-cloud-os-login/noxfile.py b/packages/google-cloud-os-login/noxfile.py index 8f85dfe7f505..eeaab6dccbcd 100644 --- a/packages/google-cloud-os-login/noxfile.py +++ b/packages/google-cloud-os-login/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-os-login/testing/constraints-3.15.txt b/packages/google-cloud-os-login/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-os-login/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-parallelstore/noxfile.py b/packages/google-cloud-parallelstore/noxfile.py index 9797fedc7bb5..281d1d3e2734 100644 --- a/packages/google-cloud-parallelstore/noxfile.py +++ b/packages/google-cloud-parallelstore/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-parallelstore/testing/constraints-3.15.txt b/packages/google-cloud-parallelstore/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-parallelstore/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-parallelstore/tests/unit/gapic/parallelstore_v1/test_parallelstore.py b/packages/google-cloud-parallelstore/tests/unit/gapic/parallelstore_v1/test_parallelstore.py index 49dc043c5226..0884af010853 100644 --- a/packages/google-cloud-parallelstore/tests/unit/gapic/parallelstore_v1/test_parallelstore.py +++ b/packages/google-cloud-parallelstore/tests/unit/gapic/parallelstore_v1/test_parallelstore.py @@ -1711,6 +1711,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, parallelstore.Instance) for i in results) @@ -1799,6 +1802,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3998,6 +4003,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, parallelstore.Instance) for i in results) diff --git a/packages/google-cloud-parallelstore/tests/unit/gapic/parallelstore_v1beta/test_parallelstore.py b/packages/google-cloud-parallelstore/tests/unit/gapic/parallelstore_v1beta/test_parallelstore.py index ca25a9106ab3..fd9e4bf7ad88 100644 --- a/packages/google-cloud-parallelstore/tests/unit/gapic/parallelstore_v1beta/test_parallelstore.py +++ b/packages/google-cloud-parallelstore/tests/unit/gapic/parallelstore_v1beta/test_parallelstore.py @@ -1711,6 +1711,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, parallelstore.Instance) for i in results) @@ -1799,6 +1802,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3999,6 +4004,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, parallelstore.Instance) for i in results) diff --git a/packages/google-cloud-parametermanager/noxfile.py b/packages/google-cloud-parametermanager/noxfile.py index 7cc0bf8cba28..611a37224b81 100644 --- a/packages/google-cloud-parametermanager/noxfile.py +++ b/packages/google-cloud-parametermanager/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-parametermanager/testing/constraints-3.15.txt b/packages/google-cloud-parametermanager/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-parametermanager/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-parametermanager/tests/unit/gapic/parametermanager_v1/test_parameter_manager.py b/packages/google-cloud-parametermanager/tests/unit/gapic/parametermanager_v1/test_parameter_manager.py index 7ed3b80a78df..3af9df1babd0 100644 --- a/packages/google-cloud-parametermanager/tests/unit/gapic/parametermanager_v1/test_parameter_manager.py +++ b/packages/google-cloud-parametermanager/tests/unit/gapic/parametermanager_v1/test_parameter_manager.py @@ -1740,6 +1740,9 @@ def test_list_parameters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Parameter) for i in results) @@ -1828,6 +1831,8 @@ async def test_list_parameters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3617,6 +3622,9 @@ def test_list_parameter_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.ParameterVersion) for i in results) @@ -3709,6 +3717,8 @@ async def test_list_parameter_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5781,6 +5791,9 @@ def test_list_parameters_rest_pager(transport: str = "rest"): pager = client.list_parameters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Parameter) for i in results) @@ -6820,6 +6833,9 @@ def test_list_parameter_versions_rest_pager(transport: str = "rest"): pager = client.list_parameter_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.ParameterVersion) for i in results) diff --git a/packages/google-cloud-phishing-protection/noxfile.py b/packages/google-cloud-phishing-protection/noxfile.py index 26b29d321260..fa0ea1f38663 100644 --- a/packages/google-cloud-phishing-protection/noxfile.py +++ b/packages/google-cloud-phishing-protection/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-phishing-protection/testing/constraints-3.15.txt b/packages/google-cloud-phishing-protection/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-phishing-protection/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-policy-troubleshooter/noxfile.py b/packages/google-cloud-policy-troubleshooter/noxfile.py index e58bdb90dc5d..c0e840da9c5c 100644 --- a/packages/google-cloud-policy-troubleshooter/noxfile.py +++ b/packages/google-cloud-policy-troubleshooter/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-policy-troubleshooter/testing/constraints-3.15.txt b/packages/google-cloud-policy-troubleshooter/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-policy-troubleshooter/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-policysimulator/noxfile.py b/packages/google-cloud-policysimulator/noxfile.py index 3d3c18d50ed7..9acb361d2a9e 100644 --- a/packages/google-cloud-policysimulator/noxfile.py +++ b/packages/google-cloud-policysimulator/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-policysimulator/testing/constraints-3.15.txt b/packages/google-cloud-policysimulator/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-policysimulator/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-policysimulator/tests/unit/gapic/policysimulator_v1/test_org_policy_violations_preview_service.py b/packages/google-cloud-policysimulator/tests/unit/gapic/policysimulator_v1/test_org_policy_violations_preview_service.py index e60288ef9eb9..1a11cda8d8b0 100644 --- a/packages/google-cloud-policysimulator/tests/unit/gapic/policysimulator_v1/test_org_policy_violations_preview_service.py +++ b/packages/google-cloud-policysimulator/tests/unit/gapic/policysimulator_v1/test_org_policy_violations_preview_service.py @@ -1869,6 +1869,9 @@ def test_list_org_policy_violations_previews_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1963,6 +1966,8 @@ async def test_list_org_policy_violations_previews_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3158,6 +3163,9 @@ def test_list_org_policy_violations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gcp_orgpolicy.OrgPolicyViolation) for i in results) @@ -3250,6 +3258,8 @@ async def test_list_org_policy_violations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3566,6 +3576,9 @@ def test_list_org_policy_violations_previews_rest_pager(transport: str = "rest") pager = client.list_org_policy_violations_previews(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4231,6 +4244,9 @@ def test_list_org_policy_violations_rest_pager(transport: str = "rest"): pager = client.list_org_policy_violations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gcp_orgpolicy.OrgPolicyViolation) for i in results) diff --git a/packages/google-cloud-policysimulator/tests/unit/gapic/policysimulator_v1/test_simulator.py b/packages/google-cloud-policysimulator/tests/unit/gapic/policysimulator_v1/test_simulator.py index de2a7806b844..fc1e29ebbcca 100644 --- a/packages/google-cloud-policysimulator/tests/unit/gapic/policysimulator_v1/test_simulator.py +++ b/packages/google-cloud-policysimulator/tests/unit/gapic/policysimulator_v1/test_simulator.py @@ -2340,6 +2340,9 @@ def test_list_replay_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, simulator.ReplayResult) for i in results) @@ -2432,6 +2435,8 @@ async def test_list_replay_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3102,6 +3107,9 @@ def test_list_replay_results_rest_pager(transport: str = "rest"): pager = client.list_replay_results(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, simulator.ReplayResult) for i in results) diff --git a/packages/google-cloud-policytroubleshooter-iam/noxfile.py b/packages/google-cloud-policytroubleshooter-iam/noxfile.py index 64b3a1946ab8..6711ec0d66dd 100644 --- a/packages/google-cloud-policytroubleshooter-iam/noxfile.py +++ b/packages/google-cloud-policytroubleshooter-iam/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-policytroubleshooter-iam/testing/constraints-3.15.txt b/packages/google-cloud-policytroubleshooter-iam/testing/constraints-3.15.txt new file mode 100644 index 000000000000..d72c71aba784 --- /dev/null +++ b/packages/google-cloud-policytroubleshooter-iam/testing/constraints-3.15.txt @@ -0,0 +1,14 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 +google-cloud-iam>=2 diff --git a/packages/google-cloud-private-ca/noxfile.py b/packages/google-cloud-private-ca/noxfile.py index 63dbc9f15da1..798cdac40a9c 100644 --- a/packages/google-cloud-private-ca/noxfile.py +++ b/packages/google-cloud-private-ca/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-private-ca/testing/constraints-3.15.txt b/packages/google-cloud-private-ca/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-private-ca/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-private-ca/tests/unit/gapic/privateca_v1/test_certificate_authority_service.py b/packages/google-cloud-private-ca/tests/unit/gapic/privateca_v1/test_certificate_authority_service.py index f583493c6f31..5ef2cad495a6 100644 --- a/packages/google-cloud-private-ca/tests/unit/gapic/privateca_v1/test_certificate_authority_service.py +++ b/packages/google-cloud-private-ca/tests/unit/gapic/privateca_v1/test_certificate_authority_service.py @@ -2577,6 +2577,9 @@ def test_list_certificates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Certificate) for i in results) @@ -2669,6 +2672,8 @@ async def test_list_certificates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6010,6 +6015,9 @@ def test_list_certificate_authorities_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CertificateAuthority) for i in results) @@ -6102,6 +6110,8 @@ async def test_list_certificate_authorities_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8603,6 +8613,9 @@ def test_list_ca_pools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CaPool) for i in results) @@ -8691,6 +8704,8 @@ async def test_list_ca_pools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10165,6 +10180,9 @@ def test_list_certificate_revocation_lists_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CertificateRevocationList) for i in results) @@ -10257,6 +10275,8 @@ async def test_list_certificate_revocation_lists_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12160,6 +12180,9 @@ def test_list_certificate_templates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CertificateTemplate) for i in results) @@ -12252,6 +12275,8 @@ async def test_list_certificate_templates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13310,6 +13335,9 @@ def test_list_certificates_rest_pager(transport: str = "rest"): pager = client.list_certificates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Certificate) for i in results) @@ -15148,6 +15176,9 @@ def test_list_certificate_authorities_rest_pager(transport: str = "rest"): pager = client.list_certificate_authorities(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CertificateAuthority) for i in results) @@ -16580,6 +16611,9 @@ def test_list_ca_pools_rest_pager(transport: str = "rest"): pager = client.list_ca_pools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CaPool) for i in results) @@ -17410,6 +17444,9 @@ def test_list_certificate_revocation_lists_rest_pager(transport: str = "rest"): pager = client.list_certificate_revocation_lists(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CertificateRevocationList) for i in results) @@ -18484,6 +18521,9 @@ def test_list_certificate_templates_rest_pager(transport: str = "rest"): pager = client.list_certificate_templates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CertificateTemplate) for i in results) diff --git a/packages/google-cloud-private-ca/tests/unit/gapic/privateca_v1beta1/test_certificate_authority_service.py b/packages/google-cloud-private-ca/tests/unit/gapic/privateca_v1beta1/test_certificate_authority_service.py index e28eb8887c7a..92020aaa2a0a 100644 --- a/packages/google-cloud-private-ca/tests/unit/gapic/privateca_v1beta1/test_certificate_authority_service.py +++ b/packages/google-cloud-private-ca/tests/unit/gapic/privateca_v1beta1/test_certificate_authority_service.py @@ -2544,6 +2544,9 @@ def test_list_certificates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Certificate) for i in results) @@ -2636,6 +2639,8 @@ async def test_list_certificates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5951,6 +5956,9 @@ def test_list_certificate_authorities_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CertificateAuthority) for i in results) @@ -6043,6 +6051,8 @@ async def test_list_certificate_authorities_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7930,6 +7940,9 @@ def test_list_certificate_revocation_lists_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CertificateRevocationList) for i in results) @@ -8022,6 +8035,8 @@ async def test_list_certificate_revocation_lists_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9200,6 +9215,9 @@ def test_list_reusable_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ReusableConfig) for i in results) @@ -9292,6 +9310,8 @@ async def test_list_reusable_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9991,6 +10011,9 @@ def test_list_certificates_rest_pager(transport: str = "rest"): pager = client.list_certificates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Certificate) for i in results) @@ -11823,6 +11846,9 @@ def test_list_certificate_authorities_rest_pager(transport: str = "rest"): pager = client.list_certificate_authorities(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CertificateAuthority) for i in results) @@ -12869,6 +12895,9 @@ def test_list_certificate_revocation_lists_rest_pager(transport: str = "rest"): pager = client.list_certificate_revocation_lists(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.CertificateRevocationList) for i in results) @@ -13532,6 +13561,9 @@ def test_list_reusable_configs_rest_pager(transport: str = "rest"): pager = client.list_reusable_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ReusableConfig) for i in results) diff --git a/packages/google-cloud-private-catalog/noxfile.py b/packages/google-cloud-private-catalog/noxfile.py index 6c62e204bc2c..55c7c99c70da 100644 --- a/packages/google-cloud-private-catalog/noxfile.py +++ b/packages/google-cloud-private-catalog/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-private-catalog/testing/constraints-3.15.txt b/packages/google-cloud-private-catalog/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-private-catalog/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-private-catalog/tests/unit/gapic/privatecatalog_v1beta1/test_private_catalog.py b/packages/google-cloud-private-catalog/tests/unit/gapic/privatecatalog_v1beta1/test_private_catalog.py index b7ae450d5a33..f205832caa0b 100644 --- a/packages/google-cloud-private-catalog/tests/unit/gapic/privatecatalog_v1beta1/test_private_catalog.py +++ b/packages/google-cloud-private-catalog/tests/unit/gapic/privatecatalog_v1beta1/test_private_catalog.py @@ -1618,6 +1618,9 @@ def test_search_catalogs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, private_catalog.Catalog) for i in results) @@ -1706,6 +1709,8 @@ async def test_search_catalogs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2054,6 +2059,9 @@ def test_search_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, private_catalog.Product) for i in results) @@ -2142,6 +2150,8 @@ async def test_search_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2490,6 +2500,9 @@ def test_search_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, private_catalog.Version) for i in results) @@ -2578,6 +2591,8 @@ async def test_search_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2822,6 +2837,9 @@ def test_search_catalogs_rest_pager(transport: str = "rest"): pager = client.search_catalogs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, private_catalog.Catalog) for i in results) @@ -3022,6 +3040,9 @@ def test_search_products_rest_pager(transport: str = "rest"): pager = client.search_products(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, private_catalog.Product) for i in results) @@ -3240,6 +3261,9 @@ def test_search_versions_rest_pager(transport: str = "rest"): pager = client.search_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, private_catalog.Version) for i in results) diff --git a/packages/google-cloud-privilegedaccessmanager/noxfile.py b/packages/google-cloud-privilegedaccessmanager/noxfile.py index 59636262695a..9d4fb52685e1 100644 --- a/packages/google-cloud-privilegedaccessmanager/noxfile.py +++ b/packages/google-cloud-privilegedaccessmanager/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-privilegedaccessmanager/testing/constraints-3.15.txt b/packages/google-cloud-privilegedaccessmanager/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-privilegedaccessmanager/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-privilegedaccessmanager/tests/unit/gapic/privilegedaccessmanager_v1/test_privileged_access_manager.py b/packages/google-cloud-privilegedaccessmanager/tests/unit/gapic/privilegedaccessmanager_v1/test_privileged_access_manager.py index 8f8a5ce964c9..253fe14866f0 100644 --- a/packages/google-cloud-privilegedaccessmanager/tests/unit/gapic/privilegedaccessmanager_v1/test_privileged_access_manager.py +++ b/packages/google-cloud-privilegedaccessmanager/tests/unit/gapic/privilegedaccessmanager_v1/test_privileged_access_manager.py @@ -2060,6 +2060,9 @@ def test_list_entitlements_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, privilegedaccessmanager.Entitlement) for i in results) @@ -2152,6 +2155,8 @@ async def test_list_entitlements_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2520,6 +2525,9 @@ def test_search_entitlements_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, privilegedaccessmanager.Entitlement) for i in results) @@ -2612,6 +2620,8 @@ async def test_search_entitlements_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4454,6 +4464,9 @@ def test_list_grants_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, privilegedaccessmanager.Grant) for i in results) @@ -4542,6 +4555,8 @@ async def test_list_grants_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4890,6 +4905,9 @@ def test_search_grants_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, privilegedaccessmanager.Grant) for i in results) @@ -4978,6 +4996,8 @@ async def test_search_grants_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6870,6 +6890,9 @@ def test_list_entitlements_rest_pager(transport: str = "rest"): pager = client.list_entitlements(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, privilegedaccessmanager.Entitlement) for i in results) @@ -7084,6 +7107,9 @@ def test_search_entitlements_rest_pager(transport: str = "rest"): pager = client.search_entitlements(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, privilegedaccessmanager.Entitlement) for i in results) @@ -8139,6 +8165,9 @@ def test_list_grants_rest_pager(transport: str = "rest"): pager = client.list_grants(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, privilegedaccessmanager.Grant) for i in results) @@ -8348,6 +8377,9 @@ def test_search_grants_rest_pager(transport: str = "rest"): pager = client.search_grants(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, privilegedaccessmanager.Grant) for i in results) diff --git a/packages/google-cloud-pubsub/noxfile.py b/packages/google-cloud-pubsub/noxfile.py index fb01bc8d1105..066ad8cbd524 100644 --- a/packages/google-cloud-pubsub/noxfile.py +++ b/packages/google-cloud-pubsub/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -615,7 +623,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-pubsub/testing/constraints-3.15.txt b/packages/google-cloud-pubsub/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-pubsub/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-pubsub/tests/unit/gapic/pubsub_v1/test_publisher.py b/packages/google-cloud-pubsub/tests/unit/gapic/pubsub_v1/test_publisher.py index 35e2de8bb251..a1b61eb166e8 100644 --- a/packages/google-cloud-pubsub/tests/unit/gapic/pubsub_v1/test_publisher.py +++ b/packages/google-cloud-pubsub/tests/unit/gapic/pubsub_v1/test_publisher.py @@ -3000,6 +3000,9 @@ def test_list_topics_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, pubsub.Topic) for i in results) @@ -3088,6 +3091,8 @@ async def test_list_topics_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3545,6 +3550,9 @@ def test_list_topic_subscriptions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -3637,6 +3645,8 @@ async def test_list_topic_subscriptions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4093,6 +4103,9 @@ def test_list_topic_snapshots_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -4185,6 +4198,8 @@ async def test_list_topic_snapshots_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5758,6 +5773,9 @@ def test_list_topics_rest_pager(transport: str = "rest"): pager = client.list_topics(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, pubsub.Topic) for i in results) @@ -6018,6 +6036,9 @@ def test_list_topic_subscriptions_rest_pager(transport: str = "rest"): pager = client.list_topic_subscriptions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) @@ -6275,6 +6296,9 @@ def test_list_topic_snapshots_rest_pager(transport: str = "rest"): pager = client.list_topic_snapshots(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, str) for i in results) diff --git a/packages/google-cloud-pubsub/tests/unit/gapic/pubsub_v1/test_schema_service.py b/packages/google-cloud-pubsub/tests/unit/gapic/pubsub_v1/test_schema_service.py index a40ff4c08fe3..ac70cdec4067 100644 --- a/packages/google-cloud-pubsub/tests/unit/gapic/pubsub_v1/test_schema_service.py +++ b/packages/google-cloud-pubsub/tests/unit/gapic/pubsub_v1/test_schema_service.py @@ -2390,6 +2390,9 @@ def test_list_schemas_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, schema.Schema) for i in results) @@ -2478,6 +2481,8 @@ async def test_list_schemas_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2929,6 +2934,9 @@ def test_list_schema_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, schema.Schema) for i in results) @@ -3021,6 +3029,8 @@ async def test_list_schema_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5615,6 +5625,9 @@ def test_list_schemas_rest_pager(transport: str = "rest"): pager = client.list_schemas(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, schema.Schema) for i in results) @@ -5877,6 +5890,9 @@ def test_list_schema_revisions_rest_pager(transport: str = "rest"): pager = client.list_schema_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, schema.Schema) for i in results) diff --git a/packages/google-cloud-pubsub/tests/unit/gapic/pubsub_v1/test_subscriber.py b/packages/google-cloud-pubsub/tests/unit/gapic/pubsub_v1/test_subscriber.py index 2404d2db8ce5..d9893eeb0b7f 100644 --- a/packages/google-cloud-pubsub/tests/unit/gapic/pubsub_v1/test_subscriber.py +++ b/packages/google-cloud-pubsub/tests/unit/gapic/pubsub_v1/test_subscriber.py @@ -2824,6 +2824,9 @@ def test_list_subscriptions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, pubsub.Subscription) for i in results) @@ -2916,6 +2919,8 @@ async def test_list_subscriptions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5490,6 +5495,9 @@ def test_list_snapshots_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, pubsub.Snapshot) for i in results) @@ -5578,6 +5586,8 @@ async def test_list_snapshots_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7653,6 +7663,9 @@ def test_list_subscriptions_rest_pager(transport: str = "rest"): pager = client.list_subscriptions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, pubsub.Subscription) for i in results) @@ -9030,6 +9043,9 @@ def test_list_snapshots_rest_pager(transport: str = "rest"): pager = client.list_snapshots(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, pubsub.Snapshot) for i in results) diff --git a/packages/google-cloud-quotas/noxfile.py b/packages/google-cloud-quotas/noxfile.py index 53416e6741d4..f0c9d9bc6a66 100644 --- a/packages/google-cloud-quotas/noxfile.py +++ b/packages/google-cloud-quotas/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-quotas/testing/constraints-3.15.txt b/packages/google-cloud-quotas/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-quotas/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-quotas/tests/unit/gapic/cloudquotas_v1/test_cloud_quotas.py b/packages/google-cloud-quotas/tests/unit/gapic/cloudquotas_v1/test_cloud_quotas.py index 335385d75085..945dd6ac83e1 100644 --- a/packages/google-cloud-quotas/tests/unit/gapic/cloudquotas_v1/test_cloud_quotas.py +++ b/packages/google-cloud-quotas/tests/unit/gapic/cloudquotas_v1/test_cloud_quotas.py @@ -1665,6 +1665,9 @@ def test_list_quota_infos_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QuotaInfo) for i in results) @@ -1753,6 +1756,8 @@ async def test_list_quota_infos_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2584,6 +2589,9 @@ def test_list_quota_preferences_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QuotaPreference) for i in results) @@ -2676,6 +2684,8 @@ async def test_list_quota_preferences_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4118,6 +4128,9 @@ def test_list_quota_infos_rest_pager(transport: str = "rest"): pager = client.list_quota_infos(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QuotaInfo) for i in results) @@ -4563,6 +4576,9 @@ def test_list_quota_preferences_rest_pager(transport: str = "rest"): pager = client.list_quota_preferences(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QuotaPreference) for i in results) diff --git a/packages/google-cloud-quotas/tests/unit/gapic/cloudquotas_v1beta/test_cloud_quotas.py b/packages/google-cloud-quotas/tests/unit/gapic/cloudquotas_v1beta/test_cloud_quotas.py index b62cce5a951a..cf3dcd1a8f11 100644 --- a/packages/google-cloud-quotas/tests/unit/gapic/cloudquotas_v1beta/test_cloud_quotas.py +++ b/packages/google-cloud-quotas/tests/unit/gapic/cloudquotas_v1beta/test_cloud_quotas.py @@ -1665,6 +1665,9 @@ def test_list_quota_infos_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QuotaInfo) for i in results) @@ -1753,6 +1756,8 @@ async def test_list_quota_infos_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2584,6 +2589,9 @@ def test_list_quota_preferences_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QuotaPreference) for i in results) @@ -2676,6 +2684,8 @@ async def test_list_quota_preferences_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4118,6 +4128,9 @@ def test_list_quota_infos_rest_pager(transport: str = "rest"): pager = client.list_quota_infos(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QuotaInfo) for i in results) @@ -4563,6 +4576,9 @@ def test_list_quota_preferences_rest_pager(transport: str = "rest"): pager = client.list_quota_preferences(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.QuotaPreference) for i in results) diff --git a/packages/google-cloud-rapidmigrationassessment/noxfile.py b/packages/google-cloud-rapidmigrationassessment/noxfile.py index 7963a1ae7b82..3a28fc0b60b1 100644 --- a/packages/google-cloud-rapidmigrationassessment/noxfile.py +++ b/packages/google-cloud-rapidmigrationassessment/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-rapidmigrationassessment/testing/constraints-3.15.txt b/packages/google-cloud-rapidmigrationassessment/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-rapidmigrationassessment/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-rapidmigrationassessment/tests/unit/gapic/rapidmigrationassessment_v1/test_rapid_migration_assessment.py b/packages/google-cloud-rapidmigrationassessment/tests/unit/gapic/rapidmigrationassessment_v1/test_rapid_migration_assessment.py index e8089320c9fb..92715ad9f54c 100644 --- a/packages/google-cloud-rapidmigrationassessment/tests/unit/gapic/rapidmigrationassessment_v1/test_rapid_migration_assessment.py +++ b/packages/google-cloud-rapidmigrationassessment/tests/unit/gapic/rapidmigrationassessment_v1/test_rapid_migration_assessment.py @@ -2827,6 +2827,9 @@ def test_list_collectors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, api_entities.Collector) for i in results) @@ -2915,6 +2918,8 @@ async def test_list_collectors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5851,6 +5856,9 @@ def test_list_collectors_rest_pager(transport: str = "rest"): pager = client.list_collectors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, api_entities.Collector) for i in results) diff --git a/packages/google-cloud-recaptcha-enterprise/noxfile.py b/packages/google-cloud-recaptcha-enterprise/noxfile.py index cc7f5fec5d0c..5caf81d6fa7c 100644 --- a/packages/google-cloud-recaptcha-enterprise/noxfile.py +++ b/packages/google-cloud-recaptcha-enterprise/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-recaptcha-enterprise/testing/constraints-3.15.txt b/packages/google-cloud-recaptcha-enterprise/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-recaptcha-enterprise/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-recaptcha-enterprise/tests/unit/gapic/recaptchaenterprise_v1/test_recaptcha_enterprise_service.py b/packages/google-cloud-recaptcha-enterprise/tests/unit/gapic/recaptchaenterprise_v1/test_recaptcha_enterprise_service.py index 59988393300f..2af450a77348 100644 --- a/packages/google-cloud-recaptcha-enterprise/tests/unit/gapic/recaptchaenterprise_v1/test_recaptcha_enterprise_service.py +++ b/packages/google-cloud-recaptcha-enterprise/tests/unit/gapic/recaptchaenterprise_v1/test_recaptcha_enterprise_service.py @@ -2782,6 +2782,9 @@ def test_list_keys_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, recaptchaenterprise.Key) for i in results) @@ -2870,6 +2873,8 @@ async def test_list_keys_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5549,6 +5554,9 @@ def test_list_ip_overrides_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, recaptchaenterprise.IpOverrideData) for i in results) @@ -5641,6 +5649,8 @@ async def test_list_ip_overrides_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6785,6 +6795,9 @@ def test_list_firewall_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, recaptchaenterprise.FirewallPolicy) for i in results) @@ -6877,6 +6890,8 @@ async def test_list_firewall_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8731,6 +8746,9 @@ def test_list_related_account_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -8825,6 +8843,8 @@ async def test_list_related_account_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9290,6 +9310,9 @@ def test_list_related_account_group_memberships_pager(transport_name: str = "grp assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -9385,6 +9408,8 @@ async def test_list_related_account_group_memberships_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9867,6 +9892,9 @@ def test_search_related_account_group_memberships_pager(transport_name: str = "g assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -9962,6 +9990,8 @@ async def test_search_related_account_group_memberships_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-recommendations-ai/noxfile.py b/packages/google-cloud-recommendations-ai/noxfile.py index 1b1048928076..16cfe51275b3 100644 --- a/packages/google-cloud-recommendations-ai/noxfile.py +++ b/packages/google-cloud-recommendations-ai/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-recommendations-ai/testing/constraints-3.15.txt b/packages/google-cloud-recommendations-ai/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-recommendations-ai/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_catalog_service.py b/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_catalog_service.py index da63df29571d..1da2428d9343 100644 --- a/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_catalog_service.py +++ b/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_catalog_service.py @@ -2453,6 +2453,9 @@ def test_list_catalog_items_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.CatalogItem) for i in results) @@ -2545,6 +2548,8 @@ async def test_list_catalog_items_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4348,6 +4353,9 @@ def test_list_catalog_items_rest_pager(transport: str = "rest"): pager = client.list_catalog_items(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.CatalogItem) for i in results) diff --git a/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_prediction_api_key_registry.py b/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_prediction_api_key_registry.py index 2220306abb54..11589861d018 100644 --- a/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_prediction_api_key_registry.py +++ b/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_prediction_api_key_registry.py @@ -2190,6 +2190,9 @@ def test_list_prediction_api_key_registrations_pager(transport_name: str = "grpc assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2287,6 +2290,8 @@ async def test_list_prediction_api_key_registrations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3177,6 +3182,9 @@ def test_list_prediction_api_key_registrations_rest_pager(transport: str = "rest pager = client.list_prediction_api_key_registrations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_prediction_service.py b/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_prediction_service.py index ff9949422091..914c67f79b8e 100644 --- a/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_prediction_service.py +++ b/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_prediction_service.py @@ -1765,6 +1765,9 @@ def test_predict_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1856,6 +1859,8 @@ async def test_predict_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2157,6 +2162,9 @@ def test_predict_rest_pager(transport: str = "rest"): pager = client.predict(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_user_event_service.py b/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_user_event_service.py index 9d7352e5473e..e01bbb9984bd 100644 --- a/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_user_event_service.py +++ b/packages/google-cloud-recommendations-ai/tests/unit/gapic/recommendationengine_v1beta1/test_user_event_service.py @@ -2477,6 +2477,9 @@ def test_list_user_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, user_event.UserEvent) for i in results) @@ -2565,6 +2568,8 @@ async def test_list_user_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4057,6 +4062,9 @@ def test_list_user_events_rest_pager(transport: str = "rest"): pager = client.list_user_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, user_event.UserEvent) for i in results) diff --git a/packages/google-cloud-recommender/noxfile.py b/packages/google-cloud-recommender/noxfile.py index 144f17361952..a1212c8e6c86 100644 --- a/packages/google-cloud-recommender/noxfile.py +++ b/packages/google-cloud-recommender/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-recommender/testing/constraints-3.15.txt b/packages/google-cloud-recommender/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-recommender/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-recommender/tests/unit/gapic/recommender_v1/test_recommender.py b/packages/google-cloud-recommender/tests/unit/gapic/recommender_v1/test_recommender.py index a3b2f53fb2de..656475e73a65 100644 --- a/packages/google-cloud-recommender/tests/unit/gapic/recommender_v1/test_recommender.py +++ b/packages/google-cloud-recommender/tests/unit/gapic/recommender_v1/test_recommender.py @@ -1678,6 +1678,9 @@ def test_list_insights_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, insight.Insight) for i in results) @@ -1766,6 +1769,8 @@ async def test_list_insights_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2959,6 +2964,9 @@ def test_list_recommendations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, recommendation.Recommendation) for i in results) @@ -3051,6 +3059,8 @@ async def test_list_recommendations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6639,6 +6649,9 @@ def test_list_insights_rest_pager(transport: str = "rest"): pager = client.list_insights(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, insight.Insight) for i in results) @@ -7291,6 +7304,9 @@ def test_list_recommendations_rest_pager(transport: str = "rest"): pager = client.list_recommendations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, recommendation.Recommendation) for i in results) diff --git a/packages/google-cloud-recommender/tests/unit/gapic/recommender_v1beta1/test_recommender.py b/packages/google-cloud-recommender/tests/unit/gapic/recommender_v1beta1/test_recommender.py index 9ff26baf34cc..3adadf767a49 100644 --- a/packages/google-cloud-recommender/tests/unit/gapic/recommender_v1beta1/test_recommender.py +++ b/packages/google-cloud-recommender/tests/unit/gapic/recommender_v1beta1/test_recommender.py @@ -1678,6 +1678,9 @@ def test_list_insights_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, insight.Insight) for i in results) @@ -1766,6 +1769,8 @@ async def test_list_insights_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2959,6 +2964,9 @@ def test_list_recommendations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, recommendation.Recommendation) for i in results) @@ -3051,6 +3059,8 @@ async def test_list_recommendations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6322,6 +6332,9 @@ def test_list_recommenders_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, recommendation.RecommenderType) for i in results) @@ -6414,6 +6427,8 @@ async def test_list_recommenders_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6708,6 +6723,9 @@ def test_list_insight_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, insight.InsightType) for i in results) @@ -6800,6 +6818,8 @@ async def test_list_insight_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7108,6 +7128,9 @@ def test_list_insights_rest_pager(transport: str = "rest"): pager = client.list_insights(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, insight.Insight) for i in results) @@ -7760,6 +7783,9 @@ def test_list_recommendations_rest_pager(transport: str = "rest"): pager = client.list_recommendations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, recommendation.Recommendation) for i in results) @@ -9431,6 +9457,9 @@ def test_list_recommenders_rest_pager(transport: str = "rest"): pager = client.list_recommenders(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, recommendation.RecommenderType) for i in results) @@ -9534,6 +9563,9 @@ def test_list_insight_types_rest_pager(transport: str = "rest"): pager = client.list_insight_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, insight.InsightType) for i in results) diff --git a/packages/google-cloud-redis-cluster/noxfile.py b/packages/google-cloud-redis-cluster/noxfile.py index 04445b2b2ed8..a1c9373da5c0 100644 --- a/packages/google-cloud-redis-cluster/noxfile.py +++ b/packages/google-cloud-redis-cluster/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-redis-cluster/testing/constraints-3.15.txt b/packages/google-cloud-redis-cluster/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-redis-cluster/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-redis-cluster/tests/unit/gapic/redis_cluster_v1/test_cloud_redis_cluster.py b/packages/google-cloud-redis-cluster/tests/unit/gapic/redis_cluster_v1/test_cloud_redis_cluster.py index 9a91218de446..85eddb78b552 100644 --- a/packages/google-cloud-redis-cluster/tests/unit/gapic/redis_cluster_v1/test_cloud_redis_cluster.py +++ b/packages/google-cloud-redis-cluster/tests/unit/gapic/redis_cluster_v1/test_cloud_redis_cluster.py @@ -1753,6 +1753,9 @@ def test_list_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis_cluster.Cluster) for i in results) @@ -1841,6 +1844,8 @@ async def test_list_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4819,6 +4824,9 @@ def test_list_backup_collections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis_cluster.BackupCollection) for i in results) @@ -4911,6 +4919,8 @@ async def test_list_backup_collections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5708,6 +5718,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis_cluster.Backup) for i in results) @@ -5796,6 +5809,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7363,6 +7378,9 @@ def test_list_clusters_rest_pager(transport: str = "rest"): pager = client.list_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis_cluster.Cluster) for i in results) @@ -8997,6 +9015,9 @@ def test_list_backup_collections_rest_pager(transport: str = "rest"): pager = client.list_backup_collections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis_cluster.BackupCollection) for i in results) @@ -9442,6 +9463,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis_cluster.Backup) for i in results) diff --git a/packages/google-cloud-redis-cluster/tests/unit/gapic/redis_cluster_v1beta1/test_cloud_redis_cluster.py b/packages/google-cloud-redis-cluster/tests/unit/gapic/redis_cluster_v1beta1/test_cloud_redis_cluster.py index 041db6f18949..38221416fc50 100644 --- a/packages/google-cloud-redis-cluster/tests/unit/gapic/redis_cluster_v1beta1/test_cloud_redis_cluster.py +++ b/packages/google-cloud-redis-cluster/tests/unit/gapic/redis_cluster_v1beta1/test_cloud_redis_cluster.py @@ -1753,6 +1753,9 @@ def test_list_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis_cluster.Cluster) for i in results) @@ -1841,6 +1844,8 @@ async def test_list_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4819,6 +4824,9 @@ def test_list_backup_collections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis_cluster.BackupCollection) for i in results) @@ -4911,6 +4919,8 @@ async def test_list_backup_collections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5708,6 +5718,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis_cluster.Backup) for i in results) @@ -5796,6 +5809,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7364,6 +7379,9 @@ def test_list_clusters_rest_pager(transport: str = "rest"): pager = client.list_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis_cluster.Cluster) for i in results) @@ -9001,6 +9019,9 @@ def test_list_backup_collections_rest_pager(transport: str = "rest"): pager = client.list_backup_collections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis_cluster.BackupCollection) for i in results) @@ -9446,6 +9467,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis_cluster.Backup) for i in results) diff --git a/packages/google-cloud-redis/noxfile.py b/packages/google-cloud-redis/noxfile.py index 1aaaa5ee824f..41eee5068747 100644 --- a/packages/google-cloud-redis/noxfile.py +++ b/packages/google-cloud-redis/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-redis/testing/constraints-3.15.txt b/packages/google-cloud-redis/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-redis/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-redis/tests/unit/gapic/redis_v1/test_cloud_redis.py b/packages/google-cloud-redis/tests/unit/gapic/redis_v1/test_cloud_redis.py index 4932f0a10965..2f5c82fa3edd 100644 --- a/packages/google-cloud-redis/tests/unit/gapic/redis_v1/test_cloud_redis.py +++ b/packages/google-cloud-redis/tests/unit/gapic/redis_v1/test_cloud_redis.py @@ -1672,6 +1672,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis.Instance) for i in results) @@ -1760,6 +1763,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5635,6 +5640,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis.Instance) for i in results) diff --git a/packages/google-cloud-redis/tests/unit/gapic/redis_v1beta1/test_cloud_redis.py b/packages/google-cloud-redis/tests/unit/gapic/redis_v1beta1/test_cloud_redis.py index a24a8ef61eb4..5ec59a53534a 100644 --- a/packages/google-cloud-redis/tests/unit/gapic/redis_v1beta1/test_cloud_redis.py +++ b/packages/google-cloud-redis/tests/unit/gapic/redis_v1beta1/test_cloud_redis.py @@ -1672,6 +1672,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis.Instance) for i in results) @@ -1760,6 +1763,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5608,6 +5613,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_redis.Instance) for i in results) diff --git a/packages/google-cloud-resource-manager/noxfile.py b/packages/google-cloud-resource-manager/noxfile.py index d767a44baff2..20dcfd2ebab3 100644 --- a/packages/google-cloud-resource-manager/noxfile.py +++ b/packages/google-cloud-resource-manager/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-resource-manager/testing/constraints-3.15.txt b/packages/google-cloud-resource-manager/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-resource-manager/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_folders.py b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_folders.py index cfab6d067299..f45f28c5b65f 100644 --- a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_folders.py +++ b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_folders.py @@ -1912,6 +1912,9 @@ def test_list_folders_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, folders.Folder) for i in results) @@ -2000,6 +2003,8 @@ async def test_list_folders_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2364,6 +2369,9 @@ def test_search_folders_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, folders.Folder) for i in results) @@ -2452,6 +2460,8 @@ async def test_search_folders_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5580,6 +5590,9 @@ def test_list_folders_rest_pager(transport: str = "rest"): pager = client.list_folders(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, folders.Folder) for i in results) @@ -5733,6 +5746,9 @@ def test_search_folders_rest_pager(transport: str = "rest"): pager = client.search_folders(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, folders.Folder) for i in results) diff --git a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_organizations.py b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_organizations.py index a0bc568c3486..3fc84d3e726e 100644 --- a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_organizations.py +++ b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_organizations.py @@ -1997,6 +1997,9 @@ def test_search_organizations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, organizations.Organization) for i in results) @@ -2089,6 +2092,8 @@ async def test_search_organizations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3528,6 +3533,9 @@ def test_search_organizations_rest_pager(transport: str = "rest"): pager = client.search_organizations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, organizations.Organization) for i in results) diff --git a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_projects.py b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_projects.py index f109c521e21b..e2f4abb1cdac 100644 --- a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_projects.py +++ b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_projects.py @@ -1929,6 +1929,9 @@ def test_list_projects_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, projects.Project) for i in results) @@ -2017,6 +2020,8 @@ async def test_list_projects_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2381,6 +2386,9 @@ def test_search_projects_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, projects.Project) for i in results) @@ -2469,6 +2477,8 @@ async def test_search_projects_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5601,6 +5611,9 @@ def test_list_projects_rest_pager(transport: str = "rest"): pager = client.list_projects(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, projects.Project) for i in results) @@ -5754,6 +5767,9 @@ def test_search_projects_rest_pager(transport: str = "rest"): pager = client.search_projects(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, projects.Project) for i in results) diff --git a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_bindings.py b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_bindings.py index 18819095ecae..2f6c2d4aeb3e 100644 --- a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_bindings.py +++ b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_bindings.py @@ -1619,6 +1619,9 @@ def test_list_tag_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag_bindings.TagBinding) for i in results) @@ -1711,6 +1714,8 @@ async def test_list_tag_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2716,6 +2721,9 @@ def test_list_effective_tags_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag_bindings.EffectiveTag) for i in results) @@ -2808,6 +2816,8 @@ async def test_list_effective_tags_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3121,6 +3131,9 @@ def test_list_tag_bindings_rest_pager(transport: str = "rest"): pager = client.list_tag_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag_bindings.TagBinding) for i in results) @@ -3746,6 +3759,9 @@ def test_list_effective_tags_rest_pager(transport: str = "rest"): pager = client.list_effective_tags(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag_bindings.EffectiveTag) for i in results) diff --git a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_holds.py b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_holds.py index dd7018c66b68..a558ea71ce8b 100644 --- a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_holds.py +++ b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_holds.py @@ -2317,6 +2317,9 @@ def test_list_tag_holds_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag_holds.TagHold) for i in results) @@ -2405,6 +2408,8 @@ async def test_list_tag_holds_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3068,6 +3073,9 @@ def test_list_tag_holds_rest_pager(transport: str = "rest"): pager = client.list_tag_holds(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag_holds.TagHold) for i in results) diff --git a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_keys.py b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_keys.py index a91489a9f67a..c0c9789528b2 100644 --- a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_keys.py +++ b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_keys.py @@ -1580,6 +1580,9 @@ def test_list_tag_keys_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag_keys.TagKey) for i in results) @@ -1668,6 +1671,8 @@ async def test_list_tag_keys_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4600,6 +4605,9 @@ def test_list_tag_keys_rest_pager(transport: str = "rest"): pager = client.list_tag_keys(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag_keys.TagKey) for i in results) diff --git a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_values.py b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_values.py index 3f2a2bdd63e7..35417eaa86ac 100644 --- a/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_values.py +++ b/packages/google-cloud-resource-manager/tests/unit/gapic/resourcemanager_v3/test_tag_values.py @@ -1604,6 +1604,9 @@ def test_list_tag_values_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag_values.TagValue) for i in results) @@ -1692,6 +1695,8 @@ async def test_list_tag_values_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4626,6 +4631,9 @@ def test_list_tag_values_rest_pager(transport: str = "rest"): pager = client.list_tag_values(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tag_values.TagValue) for i in results) diff --git a/packages/google-cloud-retail/noxfile.py b/packages/google-cloud-retail/noxfile.py index fab57e38aee8..5716181c72c5 100644 --- a/packages/google-cloud-retail/noxfile.py +++ b/packages/google-cloud-retail/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-retail/testing/constraints-3.15.txt b/packages/google-cloud-retail/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-retail/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_catalog_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_catalog_service.py index c1261422d1c1..08d6474580d7 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_catalog_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_catalog_service.py @@ -1704,6 +1704,9 @@ def test_list_catalogs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.Catalog) for i in results) @@ -1792,6 +1795,8 @@ async def test_list_catalogs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5414,6 +5419,9 @@ def test_list_catalogs_rest_pager(transport: str = "rest"): pager = client.list_catalogs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.Catalog) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_control_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_control_service.py index 0fe810339de3..cc91adb4a969 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_control_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_control_service.py @@ -3113,6 +3113,9 @@ def test_list_controls_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, control.Control) for i in results) @@ -3201,6 +3204,8 @@ async def test_list_controls_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4261,6 +4266,9 @@ def test_list_controls_rest_pager(transport: str = "rest"): pager = client.list_controls(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, control.Control) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_model_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_model_service.py index cc5f8d556dc6..8ec8c0261fc2 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_model_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_model_service.py @@ -3436,6 +3436,9 @@ def test_list_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -3524,6 +3527,8 @@ async def test_list_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5429,6 +5434,9 @@ def test_list_models_rest_pager(transport: str = "rest"): pager = client.list_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_product_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_product_service.py index 999015bcf790..927652afb1a8 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_product_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_product_service.py @@ -2525,6 +2525,9 @@ def test_list_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product.Product) for i in results) @@ -2613,6 +2616,8 @@ async def test_list_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6260,6 +6265,9 @@ def test_list_products_rest_pager(transport: str = "rest"): pager = client.list_products(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product.Product) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_search_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_search_service.py index 87d17d1b1705..dca634e491f6 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_search_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_search_service.py @@ -1652,6 +1652,9 @@ def test_search_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1742,6 +1745,8 @@ async def test_search_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -1982,6 +1987,9 @@ def test_search_rest_pager(transport: str = "rest"): pager = client.search(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_serving_config_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_serving_config_service.py index 129a3a59134f..df079adcc72b 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_serving_config_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2/test_serving_config_service.py @@ -3416,6 +3416,9 @@ def test_list_serving_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, serving_config.ServingConfig) for i in results) @@ -3508,6 +3511,8 @@ async def test_list_serving_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5396,6 +5401,9 @@ def test_list_serving_configs_rest_pager(transport: str = "rest"): pager = client.list_serving_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, serving_config.ServingConfig) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_catalog_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_catalog_service.py index 5401409bd0dc..bd63f3a8d9be 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_catalog_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_catalog_service.py @@ -1709,6 +1709,9 @@ def test_list_catalogs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.Catalog) for i in results) @@ -1797,6 +1800,8 @@ async def test_list_catalogs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5683,6 +5688,9 @@ def test_list_catalogs_rest_pager(transport: str = "rest"): pager = client.list_catalogs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.Catalog) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_control_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_control_service.py index f1d9bf2ad515..cf92a1a069bb 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_control_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_control_service.py @@ -3166,6 +3166,9 @@ def test_list_controls_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, control.Control) for i in results) @@ -3254,6 +3257,8 @@ async def test_list_controls_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4330,6 +4335,9 @@ def test_list_controls_rest_pager(transport: str = "rest"): pager = client.list_controls(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, control.Control) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_model_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_model_service.py index 1b9754f38b98..45fa44edecca 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_model_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_model_service.py @@ -3460,6 +3460,9 @@ def test_list_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -3548,6 +3551,8 @@ async def test_list_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5485,6 +5490,9 @@ def test_list_models_rest_pager(transport: str = "rest"): pager = client.list_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_product_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_product_service.py index eae9c4976b3b..f6eb3717dd9c 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_product_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_product_service.py @@ -2530,6 +2530,9 @@ def test_list_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product.Product) for i in results) @@ -2618,6 +2621,8 @@ async def test_list_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6515,6 +6520,9 @@ def test_list_products_rest_pager(transport: str = "rest"): pager = client.list_products(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product.Product) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_search_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_search_service.py index b3a80c606463..52e98f640b55 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_search_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_search_service.py @@ -1654,6 +1654,9 @@ def test_search_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1744,6 +1747,8 @@ async def test_search_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -1984,6 +1989,9 @@ def test_search_rest_pager(transport: str = "rest"): pager = client.search(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_serving_config_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_serving_config_service.py index 0a97f983ded2..36856198c092 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_serving_config_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2alpha/test_serving_config_service.py @@ -3416,6 +3416,9 @@ def test_list_serving_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, serving_config.ServingConfig) for i in results) @@ -3508,6 +3511,8 @@ async def test_list_serving_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5396,6 +5401,9 @@ def test_list_serving_configs_rest_pager(transport: str = "rest"): pager = client.list_serving_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, serving_config.ServingConfig) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_catalog_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_catalog_service.py index f2e62374802f..7d97204000b6 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_catalog_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_catalog_service.py @@ -1709,6 +1709,9 @@ def test_list_catalogs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.Catalog) for i in results) @@ -1797,6 +1800,8 @@ async def test_list_catalogs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5683,6 +5688,9 @@ def test_list_catalogs_rest_pager(transport: str = "rest"): pager = client.list_catalogs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, catalog.Catalog) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_control_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_control_service.py index 083a01f84f47..71da78a1e14e 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_control_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_control_service.py @@ -3166,6 +3166,9 @@ def test_list_controls_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, control.Control) for i in results) @@ -3254,6 +3257,8 @@ async def test_list_controls_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4330,6 +4335,9 @@ def test_list_controls_rest_pager(transport: str = "rest"): pager = client.list_controls(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, control.Control) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_model_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_model_service.py index 05c9cc876d3d..ae091ec31859 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_model_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_model_service.py @@ -3436,6 +3436,9 @@ def test_list_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) @@ -3524,6 +3527,8 @@ async def test_list_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5429,6 +5434,9 @@ def test_list_models_rest_pager(transport: str = "rest"): pager = client.list_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, model.Model) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_product_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_product_service.py index 4caa72879351..526640086fd1 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_product_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_product_service.py @@ -2526,6 +2526,9 @@ def test_list_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product.Product) for i in results) @@ -2614,6 +2617,8 @@ async def test_list_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6509,6 +6514,9 @@ def test_list_products_rest_pager(transport: str = "rest"): pager = client.list_products(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product.Product) for i in results) diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_search_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_search_service.py index e083b472164a..8ddac69ef74c 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_search_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_search_service.py @@ -1652,6 +1652,9 @@ def test_search_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1742,6 +1745,8 @@ async def test_search_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -1982,6 +1987,9 @@ def test_search_rest_pager(transport: str = "rest"): pager = client.search(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_serving_config_service.py b/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_serving_config_service.py index b066b1c7869b..7ce50c5abe6d 100644 --- a/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_serving_config_service.py +++ b/packages/google-cloud-retail/tests/unit/gapic/retail_v2beta/test_serving_config_service.py @@ -3416,6 +3416,9 @@ def test_list_serving_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, serving_config.ServingConfig) for i in results) @@ -3508,6 +3511,8 @@ async def test_list_serving_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5396,6 +5401,9 @@ def test_list_serving_configs_rest_pager(transport: str = "rest"): pager = client.list_serving_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, serving_config.ServingConfig) for i in results) diff --git a/packages/google-cloud-run/noxfile.py b/packages/google-cloud-run/noxfile.py index 4c75b5e990d9..8951c0a33760 100644 --- a/packages/google-cloud-run/noxfile.py +++ b/packages/google-cloud-run/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-run/testing/constraints-3.15.txt b/packages/google-cloud-run/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-run/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_executions.py b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_executions.py index 2c04c5b68ab4..5a188c2f0bab 100644 --- a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_executions.py +++ b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_executions.py @@ -2052,6 +2052,9 @@ def test_list_executions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, execution.Execution) for i in results) @@ -2140,6 +2143,8 @@ async def test_list_executions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3282,6 +3287,9 @@ def test_list_executions_rest_pager(transport: str = "rest"): pager = client.list_executions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, execution.Execution) for i in results) diff --git a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_instances.py b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_instances.py index 32de2766fefd..48dd0625342d 100644 --- a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_instances.py +++ b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_instances.py @@ -2503,6 +2503,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) @@ -2591,6 +2594,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4133,6 +4138,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, instance.Instance) for i in results) diff --git a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_jobs.py b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_jobs.py index bb760fda5bde..b67895e866f0 100644 --- a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_jobs.py +++ b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_jobs.py @@ -2160,6 +2160,9 @@ def test_list_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) @@ -2248,6 +2251,8 @@ async def test_list_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4528,6 +4533,9 @@ def test_list_jobs_rest_pager(transport: str = "rest"): pager = client.list_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) diff --git a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_revisions.py b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_revisions.py index 936031fe34a0..512ec52afaa5 100644 --- a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_revisions.py +++ b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_revisions.py @@ -1944,6 +1944,9 @@ def test_list_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, revision.Revision) for i in results) @@ -2032,6 +2035,8 @@ async def test_list_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2783,6 +2788,9 @@ def test_list_revisions_rest_pager(transport: str = "rest"): pager = client.list_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, revision.Revision) for i in results) diff --git a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_services.py b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_services.py index 2a6cf1960b10..519d7e2df8fd 100644 --- a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_services.py +++ b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_services.py @@ -2239,6 +2239,9 @@ def test_list_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Service) for i in results) @@ -2327,6 +2330,8 @@ async def test_list_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4356,6 +4361,9 @@ def test_list_services_rest_pager(transport: str = "rest"): pager = client.list_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Service) for i in results) diff --git a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_tasks.py b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_tasks.py index 39b3f1b5e606..5e52c0096202 100644 --- a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_tasks.py +++ b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_tasks.py @@ -2013,6 +2013,9 @@ def test_list_tasks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, task.Task) for i in results) @@ -2101,6 +2104,8 @@ async def test_list_tasks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2581,6 +2586,9 @@ def test_list_tasks_rest_pager(transport: str = "rest"): pager = client.list_tasks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, task.Task) for i in results) diff --git a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_worker_pools.py b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_worker_pools.py index 98b1e3b3c025..eb10322b6e4f 100644 --- a/packages/google-cloud-run/tests/unit/gapic/run_v2/test_worker_pools.py +++ b/packages/google-cloud-run/tests/unit/gapic/run_v2/test_worker_pools.py @@ -2262,6 +2262,9 @@ def test_list_worker_pools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, worker_pool.WorkerPool) for i in results) @@ -2354,6 +2357,8 @@ async def test_list_worker_pools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4430,6 +4435,9 @@ def test_list_worker_pools_rest_pager(transport: str = "rest"): pager = client.list_worker_pools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, worker_pool.WorkerPool) for i in results) diff --git a/packages/google-cloud-saasplatform-saasservicemgmt/noxfile.py b/packages/google-cloud-saasplatform-saasservicemgmt/noxfile.py index 554ed2d56036..ae5a794c6627 100644 --- a/packages/google-cloud-saasplatform-saasservicemgmt/noxfile.py +++ b/packages/google-cloud-saasplatform-saasservicemgmt/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-saasplatform-saasservicemgmt/testing/constraints-3.15.txt b/packages/google-cloud-saasplatform-saasservicemgmt/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-saasplatform-saasservicemgmt/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-saasplatform-saasservicemgmt/tests/unit/gapic/saasplatform_saasservicemgmt_v1beta1/test_saas_deployments.py b/packages/google-cloud-saasplatform-saasservicemgmt/tests/unit/gapic/saasplatform_saasservicemgmt_v1beta1/test_saas_deployments.py index 7b6e55ca9b68..db0df68ce09d 100644 --- a/packages/google-cloud-saasplatform-saasservicemgmt/tests/unit/gapic/saasplatform_saasservicemgmt_v1beta1/test_saas_deployments.py +++ b/packages/google-cloud-saasplatform-saasservicemgmt/tests/unit/gapic/saasplatform_saasservicemgmt_v1beta1/test_saas_deployments.py @@ -1738,6 +1738,9 @@ def test_list_saas_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployments_resources.Saas) for i in results) @@ -1826,6 +1829,8 @@ async def test_list_saas_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3630,6 +3635,9 @@ def test_list_tenants_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployments_resources.Tenant) for i in results) @@ -3718,6 +3726,8 @@ async def test_list_tenants_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5522,6 +5532,9 @@ def test_list_unit_kinds_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployments_resources.UnitKind) for i in results) @@ -5610,6 +5623,8 @@ async def test_list_unit_kinds_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7420,6 +7435,9 @@ def test_list_units_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployments_resources.Unit) for i in results) @@ -7508,6 +7526,8 @@ async def test_list_units_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9508,6 +9528,9 @@ def test_list_unit_operations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployments_resources.UnitOperation) for i in results) @@ -9600,6 +9623,8 @@ async def test_list_unit_operations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11593,6 +11618,9 @@ def test_list_releases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployments_resources.Release) for i in results) @@ -11681,6 +11709,8 @@ async def test_list_releases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13342,6 +13372,9 @@ def test_list_saas_rest_pager(transport: str = "rest"): pager = client.list_saas(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployments_resources.Saas) for i in results) @@ -14379,6 +14412,9 @@ def test_list_tenants_rest_pager(transport: str = "rest"): pager = client.list_tenants(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployments_resources.Tenant) for i in results) @@ -15421,6 +15457,9 @@ def test_list_unit_kinds_rest_pager(transport: str = "rest"): pager = client.list_unit_kinds(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployments_resources.UnitKind) for i in results) @@ -16474,6 +16513,9 @@ def test_list_units_rest_pager(transport: str = "rest"): pager = client.list_units(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployments_resources.Unit) for i in results) @@ -17517,6 +17559,9 @@ def test_list_unit_operations_rest_pager(transport: str = "rest"): pager = client.list_unit_operations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployments_resources.UnitOperation) for i in results) @@ -18592,6 +18637,9 @@ def test_list_releases_rest_pager(transport: str = "rest"): pager = client.list_releases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, deployments_resources.Release) for i in results) diff --git a/packages/google-cloud-saasplatform-saasservicemgmt/tests/unit/gapic/saasplatform_saasservicemgmt_v1beta1/test_saas_rollouts.py b/packages/google-cloud-saasplatform-saasservicemgmt/tests/unit/gapic/saasplatform_saasservicemgmt_v1beta1/test_saas_rollouts.py index 48362edd438c..64773725f865 100644 --- a/packages/google-cloud-saasplatform-saasservicemgmt/tests/unit/gapic/saasplatform_saasservicemgmt_v1beta1/test_saas_rollouts.py +++ b/packages/google-cloud-saasplatform-saasservicemgmt/tests/unit/gapic/saasplatform_saasservicemgmt_v1beta1/test_saas_rollouts.py @@ -1691,6 +1691,9 @@ def test_list_rollouts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rollouts_resources.Rollout) for i in results) @@ -1779,6 +1782,8 @@ async def test_list_rollouts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3719,6 +3724,9 @@ def test_list_rollout_kinds_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rollouts_resources.RolloutKind) for i in results) @@ -3811,6 +3819,8 @@ async def test_list_rollout_kinds_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5603,6 +5613,9 @@ def test_list_rollouts_rest_pager(transport: str = "rest"): pager = client.list_rollouts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rollouts_resources.Rollout) for i in results) @@ -6649,6 +6662,9 @@ def test_list_rollout_kinds_rest_pager(transport: str = "rest"): pager = client.list_rollout_kinds(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, rollouts_resources.RolloutKind) for i in results) diff --git a/packages/google-cloud-scheduler/noxfile.py b/packages/google-cloud-scheduler/noxfile.py index 55917f9775bc..ef358625e9e7 100644 --- a/packages/google-cloud-scheduler/noxfile.py +++ b/packages/google-cloud-scheduler/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-scheduler/testing/constraints-3.15.txt b/packages/google-cloud-scheduler/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-scheduler/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-scheduler/tests/unit/gapic/scheduler_v1/test_cloud_scheduler.py b/packages/google-cloud-scheduler/tests/unit/gapic/scheduler_v1/test_cloud_scheduler.py index ef070581c6da..d35f17548f85 100644 --- a/packages/google-cloud-scheduler/tests/unit/gapic/scheduler_v1/test_cloud_scheduler.py +++ b/packages/google-cloud-scheduler/tests/unit/gapic/scheduler_v1/test_cloud_scheduler.py @@ -1704,6 +1704,9 @@ def test_list_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) @@ -1792,6 +1795,8 @@ async def test_list_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4417,6 +4422,9 @@ def test_list_jobs_rest_pager(transport: str = "rest"): pager = client.list_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) diff --git a/packages/google-cloud-scheduler/tests/unit/gapic/scheduler_v1beta1/test_cloud_scheduler.py b/packages/google-cloud-scheduler/tests/unit/gapic/scheduler_v1beta1/test_cloud_scheduler.py index 18b7fa633510..114fabd815be 100644 --- a/packages/google-cloud-scheduler/tests/unit/gapic/scheduler_v1beta1/test_cloud_scheduler.py +++ b/packages/google-cloud-scheduler/tests/unit/gapic/scheduler_v1beta1/test_cloud_scheduler.py @@ -1705,6 +1705,9 @@ def test_list_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) @@ -1793,6 +1796,8 @@ async def test_list_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4446,6 +4451,9 @@ def test_list_jobs_rest_pager(transport: str = "rest"): pager = client.list_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) diff --git a/packages/google-cloud-secret-manager/noxfile.py b/packages/google-cloud-secret-manager/noxfile.py index 3efeca5e9834..3943f9aea974 100644 --- a/packages/google-cloud-secret-manager/noxfile.py +++ b/packages/google-cloud-secret-manager/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-secret-manager/testing/constraints-3.15.txt b/packages/google-cloud-secret-manager/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-secret-manager/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-secret-manager/tests/unit/gapic/secretmanager_v1/test_secret_manager_service.py b/packages/google-cloud-secret-manager/tests/unit/gapic/secretmanager_v1/test_secret_manager_service.py index eeda3aae224e..5fd3db94d792 100644 --- a/packages/google-cloud-secret-manager/tests/unit/gapic/secretmanager_v1/test_secret_manager_service.py +++ b/packages/google-cloud-secret-manager/tests/unit/gapic/secretmanager_v1/test_secret_manager_service.py @@ -1772,6 +1772,9 @@ def test_list_secrets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Secret) for i in results) @@ -1860,6 +1863,8 @@ async def test_list_secrets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3992,6 +3997,9 @@ def test_list_secret_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SecretVersion) for i in results) @@ -4084,6 +4092,8 @@ async def test_list_secret_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6958,6 +6968,9 @@ def test_list_secrets_rest_pager(transport: str = "rest"): pager = client.list_secrets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Secret) for i in results) @@ -8141,6 +8154,9 @@ def test_list_secret_versions_rest_pager(transport: str = "rest"): pager = client.list_secret_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SecretVersion) for i in results) diff --git a/packages/google-cloud-secret-manager/tests/unit/gapic/secretmanager_v1beta1/test_secret_manager_service.py b/packages/google-cloud-secret-manager/tests/unit/gapic/secretmanager_v1beta1/test_secret_manager_service.py index f0883216a97c..f76e8552d290 100644 --- a/packages/google-cloud-secret-manager/tests/unit/gapic/secretmanager_v1beta1/test_secret_manager_service.py +++ b/packages/google-cloud-secret-manager/tests/unit/gapic/secretmanager_v1beta1/test_secret_manager_service.py @@ -1769,6 +1769,9 @@ def test_list_secrets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Secret) for i in results) @@ -1857,6 +1860,8 @@ async def test_list_secrets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3965,6 +3970,9 @@ def test_list_secret_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SecretVersion) for i in results) @@ -4057,6 +4065,8 @@ async def test_list_secret_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6891,6 +6901,9 @@ def test_list_secrets_rest_pager(transport: str = "rest"): pager = client.list_secrets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Secret) for i in results) @@ -8073,6 +8086,9 @@ def test_list_secret_versions_rest_pager(transport: str = "rest"): pager = client.list_secret_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SecretVersion) for i in results) diff --git a/packages/google-cloud-secret-manager/tests/unit/gapic/secretmanager_v1beta2/test_secret_manager_service.py b/packages/google-cloud-secret-manager/tests/unit/gapic/secretmanager_v1beta2/test_secret_manager_service.py index a6d9988d3f4b..4e334539143c 100644 --- a/packages/google-cloud-secret-manager/tests/unit/gapic/secretmanager_v1beta2/test_secret_manager_service.py +++ b/packages/google-cloud-secret-manager/tests/unit/gapic/secretmanager_v1beta2/test_secret_manager_service.py @@ -1772,6 +1772,9 @@ def test_list_secrets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Secret) for i in results) @@ -1860,6 +1863,8 @@ async def test_list_secrets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3992,6 +3997,9 @@ def test_list_secret_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SecretVersion) for i in results) @@ -4084,6 +4092,8 @@ async def test_list_secret_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6958,6 +6968,9 @@ def test_list_secrets_rest_pager(transport: str = "rest"): pager = client.list_secrets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Secret) for i in results) @@ -8144,6 +8157,9 @@ def test_list_secret_versions_rest_pager(transport: str = "rest"): pager = client.list_secret_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.SecretVersion) for i in results) diff --git a/packages/google-cloud-securesourcemanager/noxfile.py b/packages/google-cloud-securesourcemanager/noxfile.py index 1f33a21f0c23..6564a4a70456 100644 --- a/packages/google-cloud-securesourcemanager/noxfile.py +++ b/packages/google-cloud-securesourcemanager/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-securesourcemanager/testing/constraints-3.15.txt b/packages/google-cloud-securesourcemanager/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-securesourcemanager/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-securesourcemanager/tests/unit/gapic/securesourcemanager_v1/test_secure_source_manager.py b/packages/google-cloud-securesourcemanager/tests/unit/gapic/securesourcemanager_v1/test_secure_source_manager.py index 3faca52052c5..d6bb93c3056d 100644 --- a/packages/google-cloud-securesourcemanager/tests/unit/gapic/securesourcemanager_v1/test_secure_source_manager.py +++ b/packages/google-cloud-securesourcemanager/tests/unit/gapic/securesourcemanager_v1/test_secure_source_manager.py @@ -1784,6 +1784,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.Instance) for i in results) @@ -1872,6 +1875,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3342,6 +3347,9 @@ def test_list_repositories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.Repository) for i in results) @@ -3434,6 +3442,8 @@ async def test_list_repositories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5262,6 +5272,9 @@ def test_list_hooks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.Hook) for i in results) @@ -5350,6 +5363,8 @@ async def test_list_hooks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8605,6 +8620,9 @@ def test_list_branch_rules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.BranchRule) for i in results) @@ -8697,6 +8715,8 @@ async def test_list_branch_rules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10907,6 +10927,9 @@ def test_list_pull_requests_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.PullRequest) for i in results) @@ -10999,6 +11022,8 @@ async def test_list_pull_requests_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12842,6 +12867,9 @@ def test_list_pull_request_file_diffs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.FileDiff) for i in results) @@ -12934,6 +12962,8 @@ async def test_list_pull_request_file_diffs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13284,6 +13314,9 @@ def test_fetch_tree_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.TreeEntry) for i in results) @@ -13372,6 +13405,8 @@ async def test_fetch_tree_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14724,6 +14759,9 @@ def test_list_issues_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.Issue) for i in results) @@ -14812,6 +14850,8 @@ async def test_list_issues_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16932,6 +16972,9 @@ def test_list_pull_request_comments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -17026,6 +17069,8 @@ async def test_list_pull_request_comments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20356,6 +20401,9 @@ def test_list_issue_comments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.IssueComment) for i in results) @@ -20448,6 +20496,8 @@ async def test_list_issue_comments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -21455,6 +21505,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.Instance) for i in results) @@ -22306,6 +22359,9 @@ def test_list_repositories_rest_pager(transport: str = "rest"): pager = client.list_repositories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.Repository) for i in results) @@ -23333,6 +23389,9 @@ def test_list_hooks_rest_pager(transport: str = "rest"): pager = client.list_hooks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.Hook) for i in results) @@ -25122,6 +25181,9 @@ def test_list_branch_rules_rest_pager(transport: str = "rest"): pager = client.list_branch_rules(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.BranchRule) for i in results) @@ -26327,6 +26389,9 @@ def test_list_pull_requests_rest_pager(transport: str = "rest"): pager = client.list_pull_requests(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.PullRequest) for i in results) @@ -27332,6 +27397,9 @@ def test_list_pull_request_file_diffs_rest_pager(transport: str = "rest"): pager = client.list_pull_request_file_diffs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.FileDiff) for i in results) @@ -27536,6 +27604,9 @@ def test_fetch_tree_rest_pager(transport: str = "rest"): pager = client.fetch_tree(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.TreeEntry) for i in results) @@ -28311,6 +28382,9 @@ def test_list_issues_rest_pager(transport: str = "rest"): pager = client.list_issues(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.Issue) for i in results) @@ -29488,6 +29562,9 @@ def test_list_pull_request_comments_rest_pager(transport: str = "rest"): pager = client.list_pull_request_comments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -31314,6 +31391,9 @@ def test_list_issue_comments_rest_pager(transport: str = "rest"): pager = client.list_issue_comments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, secure_source_manager.IssueComment) for i in results) diff --git a/packages/google-cloud-security-publicca/noxfile.py b/packages/google-cloud-security-publicca/noxfile.py index e7c9130eecea..1937d7d0becb 100644 --- a/packages/google-cloud-security-publicca/noxfile.py +++ b/packages/google-cloud-security-publicca/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-security-publicca/testing/constraints-3.15.txt b/packages/google-cloud-security-publicca/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-security-publicca/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-securitycenter/noxfile.py b/packages/google-cloud-securitycenter/noxfile.py index f0c5e28a829e..c9be8c0304fd 100644 --- a/packages/google-cloud-securitycenter/noxfile.py +++ b/packages/google-cloud-securitycenter/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-securitycenter/testing/constraints-3.15.txt b/packages/google-cloud-securitycenter/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-securitycenter/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v1/test_security_center.py b/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v1/test_security_center.py index 8bfe26916f83..37ab890e7d39 100644 --- a/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v1/test_security_center.py +++ b/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v1/test_security_center.py @@ -8533,6 +8533,9 @@ def test_group_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -8621,6 +8624,8 @@ async def test_group_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9067,6 +9072,9 @@ def test_group_findings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -9155,6 +9163,8 @@ async def test_group_findings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9509,6 +9519,9 @@ def test_list_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -9600,6 +9613,8 @@ async def test_list_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10080,6 +10095,9 @@ def test_list_descendant_security_health_analytics_custom_modules_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -10187,6 +10205,8 @@ async def test_list_descendant_security_health_analytics_custom_modules_async_pa ) ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10553,6 +10573,9 @@ def test_list_findings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -10646,6 +10669,8 @@ async def test_list_findings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11097,6 +11122,9 @@ def test_list_mute_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mute_config.MuteConfig) for i in results) @@ -11189,6 +11217,8 @@ async def test_list_mute_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11644,6 +11674,9 @@ def test_list_notification_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11738,6 +11771,8 @@ async def test_list_notification_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12217,6 +12252,9 @@ def test_list_effective_security_health_analytics_custom_modules_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -12324,6 +12362,8 @@ async def test_list_effective_security_health_analytics_custom_modules_async_pag ) ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12809,6 +12849,9 @@ def test_list_security_health_analytics_custom_modules_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -12911,6 +12954,8 @@ async def test_list_security_health_analytics_custom_modules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13349,6 +13394,9 @@ def test_list_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, source.Source) for i in results) @@ -13437,6 +13485,8 @@ async def test_list_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20168,6 +20218,9 @@ def test_list_big_query_exports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, bigquery_export.BigQueryExport) for i in results) @@ -20260,6 +20313,8 @@ async def test_list_big_query_exports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -21880,6 +21935,9 @@ def test_list_descendant_event_threat_detection_custom_modules_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -21986,6 +22044,8 @@ async def test_list_descendant_event_threat_detection_custom_modules_async_pager ) ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -22462,6 +22522,9 @@ def test_list_event_threat_detection_custom_modules_pager(transport_name: str = assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -22561,6 +22624,8 @@ async def test_list_event_threat_detection_custom_modules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -24131,6 +24196,9 @@ def test_list_effective_event_threat_detection_custom_modules_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -24236,6 +24304,8 @@ async def test_list_effective_event_threat_detection_custom_modules_async_pager( request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -25788,6 +25858,9 @@ def test_list_resource_value_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -25882,6 +25955,8 @@ async def test_list_resource_value_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -26728,6 +26803,9 @@ def test_list_valued_resources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, valued_resource.ValuedResource) for i in results) @@ -26820,6 +26898,8 @@ async def test_list_valued_resources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -27270,6 +27350,9 @@ def test_list_attack_paths_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, attack_path.AttackPath) for i in results) @@ -27362,6 +27445,8 @@ async def test_list_attack_paths_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -31193,6 +31278,9 @@ def test_group_assets_rest_pager(transport: str = "rest"): pager = client.group_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -31449,6 +31537,9 @@ def test_group_findings_rest_pager(transport: str = "rest"): pager = client.group_findings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -31657,6 +31748,9 @@ def test_list_assets_rest_pager(transport: str = "rest"): pager = client.list_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -31946,6 +32040,9 @@ def test_list_descendant_security_health_analytics_custom_modules_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -32164,6 +32261,9 @@ def test_list_findings_rest_pager(transport: str = "rest"): pager = client.list_findings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -32428,6 +32528,9 @@ def test_list_mute_configs_rest_pager(transport: str = "rest"): pager = client.list_mute_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mute_config.MuteConfig) for i in results) @@ -32694,6 +32797,9 @@ def test_list_notification_configs_rest_pager(transport: str = "rest"): pager = client.list_notification_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -32982,6 +33088,9 @@ def test_list_effective_security_health_analytics_custom_modules_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -33282,6 +33391,9 @@ def test_list_security_health_analytics_custom_modules_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -33546,6 +33658,9 @@ def test_list_sources_rest_pager(transport: str = "rest"): pager = client.list_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, source.Source) for i in results) @@ -37065,6 +37180,9 @@ def test_list_big_query_exports_rest_pager(transport: str = "rest"): pager = client.list_big_query_exports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, bigquery_export.BigQueryExport) for i in results) @@ -37962,6 +38080,9 @@ def test_list_descendant_event_threat_detection_custom_modules_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -38263,6 +38384,9 @@ def test_list_event_threat_detection_custom_modules_rest_pager(transport: str = request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -39121,6 +39245,9 @@ def test_list_effective_event_threat_detection_custom_modules_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -39972,6 +40099,9 @@ def test_list_resource_value_configs_rest_pager(transport: str = "rest"): pager = client.list_resource_value_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -40437,6 +40567,9 @@ def test_list_valued_resources_rest_pager(transport: str = "rest"): pager = client.list_valued_resources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, valued_resource.ValuedResource) for i in results) @@ -40699,6 +40832,9 @@ def test_list_attack_paths_rest_pager(transport: str = "rest"): pager = client.list_attack_paths(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, attack_path.AttackPath) for i in results) diff --git a/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v1beta1/test_security_center.py b/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v1beta1/test_security_center.py index 6dd43982217f..97754392077d 100644 --- a/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v1beta1/test_security_center.py +++ b/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v1beta1/test_security_center.py @@ -3364,6 +3364,9 @@ def test_group_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -3452,6 +3455,8 @@ async def test_group_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3894,6 +3899,9 @@ def test_group_findings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -3982,6 +3990,8 @@ async def test_group_findings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4336,6 +4346,9 @@ def test_list_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4427,6 +4440,8 @@ async def test_list_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4784,6 +4799,9 @@ def test_list_findings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, finding.Finding) for i in results) @@ -4872,6 +4890,8 @@ async def test_list_findings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5300,6 +5320,9 @@ def test_list_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, source.Source) for i in results) @@ -5388,6 +5411,8 @@ async def test_list_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9349,6 +9374,9 @@ def test_group_assets_rest_pager(transport: str = "rest"): pager = client.group_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -9605,6 +9633,9 @@ def test_group_findings_rest_pager(transport: str = "rest"): pager = client.group_findings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -9813,6 +9844,9 @@ def test_list_assets_rest_pager(transport: str = "rest"): pager = client.list_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -10022,6 +10056,9 @@ def test_list_findings_rest_pager(transport: str = "rest"): pager = client.list_findings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, finding.Finding) for i in results) @@ -10277,6 +10314,9 @@ def test_list_sources_rest_pager(transport: str = "rest"): pager = client.list_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, source.Source) for i in results) diff --git a/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v1p1beta1/test_security_center.py b/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v1p1beta1/test_security_center.py index cc706f162579..209204e75923 100644 --- a/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v1p1beta1/test_security_center.py +++ b/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v1p1beta1/test_security_center.py @@ -4484,6 +4484,9 @@ def test_group_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -4572,6 +4575,8 @@ async def test_group_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5018,6 +5023,9 @@ def test_group_findings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -5106,6 +5114,8 @@ async def test_group_findings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5542,6 +5552,9 @@ def test_list_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5633,6 +5646,8 @@ async def test_list_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6072,6 +6087,9 @@ def test_list_findings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6165,6 +6183,8 @@ async def test_list_findings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6623,6 +6643,9 @@ def test_list_notification_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6717,6 +6740,8 @@ async def test_list_notification_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7149,6 +7174,9 @@ def test_list_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, source.Source) for i in results) @@ -7237,6 +7265,8 @@ async def test_list_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12210,6 +12240,9 @@ def test_group_assets_rest_pager(transport: str = "rest"): pager = client.group_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -12466,6 +12499,9 @@ def test_group_findings_rest_pager(transport: str = "rest"): pager = client.group_findings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -12731,6 +12767,9 @@ def test_list_assets_rest_pager(transport: str = "rest"): pager = client.list_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -13000,6 +13039,9 @@ def test_list_findings_rest_pager(transport: str = "rest"): pager = client.list_findings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -13271,6 +13313,9 @@ def test_list_notification_configs_rest_pager(transport: str = "rest"): pager = client.list_notification_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -13528,6 +13573,9 @@ def test_list_sources_rest_pager(transport: str = "rest"): pager = client.list_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, source.Source) for i in results) diff --git a/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v2/test_security_center.py b/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v2/test_security_center.py index b6bba020e3f1..77d8696714b6 100644 --- a/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v2/test_security_center.py +++ b/packages/google-cloud-securitycenter/tests/unit/gapic/securitycenter_v2/test_security_center.py @@ -8359,6 +8359,9 @@ def test_group_findings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -8447,6 +8450,8 @@ async def test_group_findings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8895,6 +8900,9 @@ def test_list_attack_paths_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, attack_path.AttackPath) for i in results) @@ -8987,6 +8995,8 @@ async def test_list_attack_paths_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9440,6 +9450,9 @@ def test_list_big_query_exports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, bigquery_export.BigQueryExport) for i in results) @@ -9532,6 +9545,8 @@ async def test_list_big_query_exports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9970,6 +9985,9 @@ def test_list_findings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -10063,6 +10081,8 @@ async def test_list_findings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10446,6 +10466,9 @@ def test_list_mute_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mute_config.MuteConfig) for i in results) @@ -10538,6 +10561,8 @@ async def test_list_mute_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10993,6 +11018,9 @@ def test_list_notification_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11087,6 +11115,8 @@ async def test_list_notification_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11544,6 +11574,9 @@ def test_list_resource_value_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11638,6 +11671,8 @@ async def test_list_resource_value_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12070,6 +12105,9 @@ def test_list_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, source.Source) for i in results) @@ -12158,6 +12196,8 @@ async def test_list_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12617,6 +12657,9 @@ def test_list_valued_resources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, valued_resource.ValuedResource) for i in results) @@ -12709,6 +12752,8 @@ async def test_list_valued_resources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20967,6 +21012,9 @@ def test_group_findings_rest_pager(transport: str = "rest"): pager = client.group_findings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, securitycenter_service.GroupResult) for i in results) @@ -21229,6 +21277,9 @@ def test_list_attack_paths_rest_pager(transport: str = "rest"): pager = client.list_attack_paths(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, attack_path.AttackPath) for i in results) @@ -21495,6 +21546,9 @@ def test_list_big_query_exports_rest_pager(transport: str = "rest"): pager = client.list_big_query_exports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, bigquery_export.BigQueryExport) for i in results) @@ -21757,6 +21811,9 @@ def test_list_findings_rest_pager(transport: str = "rest"): pager = client.list_findings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -22021,6 +22078,9 @@ def test_list_mute_configs_rest_pager(transport: str = "rest"): pager = client.list_mute_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, mute_config.MuteConfig) for i in results) @@ -22287,6 +22347,9 @@ def test_list_notification_configs_rest_pager(transport: str = "rest"): pager = client.list_notification_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -22555,6 +22618,9 @@ def test_list_resource_value_configs_rest_pager(transport: str = "rest"): pager = client.list_resource_value_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -22811,6 +22877,9 @@ def test_list_sources_rest_pager(transport: str = "rest"): pager = client.list_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, source.Source) for i in results) @@ -23081,6 +23150,9 @@ def test_list_valued_resources_rest_pager(transport: str = "rest"): pager = client.list_valued_resources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, valued_resource.ValuedResource) for i in results) diff --git a/packages/google-cloud-securitycentermanagement/noxfile.py b/packages/google-cloud-securitycentermanagement/noxfile.py index 6a6d67de2999..5b8024b78559 100644 --- a/packages/google-cloud-securitycentermanagement/noxfile.py +++ b/packages/google-cloud-securitycentermanagement/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-securitycentermanagement/testing/constraints-3.15.txt b/packages/google-cloud-securitycentermanagement/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-securitycentermanagement/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-securitycentermanagement/tests/unit/gapic/securitycentermanagement_v1/test_security_center_management.py b/packages/google-cloud-securitycentermanagement/tests/unit/gapic/securitycentermanagement_v1/test_security_center_management.py index 5445e6154a0d..fc16a848e3da 100644 --- a/packages/google-cloud-securitycentermanagement/tests/unit/gapic/securitycentermanagement_v1/test_security_center_management.py +++ b/packages/google-cloud-securitycentermanagement/tests/unit/gapic/securitycentermanagement_v1/test_security_center_management.py @@ -1821,6 +1821,9 @@ def test_list_effective_security_health_analytics_custom_modules_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1928,6 +1931,8 @@ async def test_list_effective_security_health_analytics_custom_modules_async_pag ) ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2795,6 +2800,9 @@ def test_list_security_health_analytics_custom_modules_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2896,6 +2904,8 @@ async def test_list_security_health_analytics_custom_modules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3382,6 +3392,9 @@ def test_list_descendant_security_health_analytics_custom_modules_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3488,6 +3501,8 @@ async def test_list_descendant_security_health_analytics_custom_modules_async_pa ) ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5937,6 +5952,9 @@ def test_list_effective_event_threat_detection_custom_modules_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6041,6 +6059,8 @@ async def test_list_effective_event_threat_detection_custom_modules_async_pager( request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6915,6 +6935,9 @@ def test_list_event_threat_detection_custom_modules_pager(transport_name: str = assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -7012,6 +7035,8 @@ async def test_list_event_threat_detection_custom_modules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7490,6 +7515,9 @@ def test_list_descendant_event_threat_detection_custom_modules_pager( assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -7594,6 +7622,8 @@ async def test_list_descendant_event_threat_detection_custom_modules_async_pager ) ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10266,6 +10296,9 @@ def test_list_security_center_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -10361,6 +10394,8 @@ async def test_list_security_center_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11073,6 +11108,9 @@ def test_list_effective_security_health_analytics_custom_modules_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11570,6 +11608,9 @@ def test_list_security_health_analytics_custom_modules_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11861,6 +11902,9 @@ def test_list_descendant_security_health_analytics_custom_modules_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -13203,6 +13247,9 @@ def test_list_effective_event_threat_detection_custom_modules_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -13705,6 +13752,9 @@ def test_list_event_threat_detection_custom_modules_rest_pager(transport: str = request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -13994,6 +14044,9 @@ def test_list_descendant_event_threat_detection_custom_modules_rest_pager( request=sample_request ) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -15443,6 +15496,9 @@ def test_list_security_center_services_rest_pager(transport: str = "rest"): pager = client.list_security_center_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-service-control/noxfile.py b/packages/google-cloud-service-control/noxfile.py index 3d3b1d64d329..8464baebc55e 100644 --- a/packages/google-cloud-service-control/noxfile.py +++ b/packages/google-cloud-service-control/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-service-control/testing/constraints-3.15.txt b/packages/google-cloud-service-control/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-service-control/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-service-directory/noxfile.py b/packages/google-cloud-service-directory/noxfile.py index 70e9c93bbe31..8fe2701b887a 100644 --- a/packages/google-cloud-service-directory/noxfile.py +++ b/packages/google-cloud-service-directory/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-service-directory/testing/constraints-3.15.txt b/packages/google-cloud-service-directory/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-service-directory/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-service-directory/tests/unit/gapic/servicedirectory_v1/test_registration_service.py b/packages/google-cloud-service-directory/tests/unit/gapic/servicedirectory_v1/test_registration_service.py index 680670078fe7..af1750bc4544 100644 --- a/packages/google-cloud-service-directory/tests/unit/gapic/servicedirectory_v1/test_registration_service.py +++ b/packages/google-cloud-service-directory/tests/unit/gapic/servicedirectory_v1/test_registration_service.py @@ -2128,6 +2128,9 @@ def test_list_namespaces_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, namespace.Namespace) for i in results) @@ -2216,6 +2219,8 @@ async def test_list_namespaces_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3968,6 +3973,9 @@ def test_list_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Service) for i in results) @@ -4056,6 +4064,8 @@ async def test_list_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5816,6 +5826,9 @@ def test_list_endpoints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, endpoint.Endpoint) for i in results) @@ -5904,6 +5917,8 @@ async def test_list_endpoints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8209,6 +8224,9 @@ def test_list_namespaces_rest_pager(transport: str = "rest"): pager = client.list_namespaces(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, namespace.Namespace) for i in results) @@ -9229,6 +9247,9 @@ def test_list_services_rest_pager(transport: str = "rest"): pager = client.list_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Service) for i in results) @@ -10247,6 +10268,9 @@ def test_list_endpoints_rest_pager(transport: str = "rest"): pager = client.list_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, endpoint.Endpoint) for i in results) diff --git a/packages/google-cloud-service-directory/tests/unit/gapic/servicedirectory_v1beta1/test_registration_service.py b/packages/google-cloud-service-directory/tests/unit/gapic/servicedirectory_v1beta1/test_registration_service.py index 188a4d4ff6c5..bc54d5a691d7 100644 --- a/packages/google-cloud-service-directory/tests/unit/gapic/servicedirectory_v1beta1/test_registration_service.py +++ b/packages/google-cloud-service-directory/tests/unit/gapic/servicedirectory_v1beta1/test_registration_service.py @@ -2129,6 +2129,9 @@ def test_list_namespaces_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, namespace.Namespace) for i in results) @@ -2217,6 +2220,8 @@ async def test_list_namespaces_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3969,6 +3974,9 @@ def test_list_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Service) for i in results) @@ -4057,6 +4065,8 @@ async def test_list_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5817,6 +5827,9 @@ def test_list_endpoints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, endpoint.Endpoint) for i in results) @@ -5905,6 +5918,8 @@ async def test_list_endpoints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8212,6 +8227,9 @@ def test_list_namespaces_rest_pager(transport: str = "rest"): pager = client.list_namespaces(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, namespace.Namespace) for i in results) @@ -9234,6 +9252,9 @@ def test_list_services_rest_pager(transport: str = "rest"): pager = client.list_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Service) for i in results) @@ -10252,6 +10273,9 @@ def test_list_endpoints_rest_pager(transport: str = "rest"): pager = client.list_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, endpoint.Endpoint) for i in results) diff --git a/packages/google-cloud-service-management/noxfile.py b/packages/google-cloud-service-management/noxfile.py index b647a373a1ed..2e28b366299f 100644 --- a/packages/google-cloud-service-management/noxfile.py +++ b/packages/google-cloud-service-management/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-service-management/testing/constraints-3.15.txt b/packages/google-cloud-service-management/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-service-management/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-service-management/tests/unit/gapic/servicemanagement_v1/test_service_manager.py b/packages/google-cloud-service-management/tests/unit/gapic/servicemanagement_v1/test_service_manager.py index 1ee3d6c14642..2c626448769f 100644 --- a/packages/google-cloud-service-management/tests/unit/gapic/servicemanagement_v1/test_service_manager.py +++ b/packages/google-cloud-service-management/tests/unit/gapic/servicemanagement_v1/test_service_manager.py @@ -1691,6 +1691,9 @@ def test_list_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ManagedService) for i in results) @@ -1779,6 +1782,8 @@ async def test_list_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3478,6 +3483,9 @@ def test_list_service_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service_pb2.Service) for i in results) @@ -3570,6 +3578,8 @@ async def test_list_service_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5140,6 +5150,9 @@ def test_list_service_rollouts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Rollout) for i in results) @@ -5232,6 +5245,8 @@ async def test_list_service_rollouts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6464,6 +6479,9 @@ def test_list_services_rest_pager(transport: str = "rest"): pager = client.list_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.ManagedService) for i in results) @@ -7421,6 +7439,9 @@ def test_list_service_configs_rest_pager(transport: str = "rest"): pager = client.list_service_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service_pb2.Service) for i in results) @@ -8279,6 +8300,9 @@ def test_list_service_rollouts_rest_pager(transport: str = "rest"): pager = client.list_service_rollouts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Rollout) for i in results) diff --git a/packages/google-cloud-service-usage/noxfile.py b/packages/google-cloud-service-usage/noxfile.py index 257a0a3d32c2..334848198c6d 100644 --- a/packages/google-cloud-service-usage/noxfile.py +++ b/packages/google-cloud-service-usage/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-service-usage/testing/constraints-3.15.txt b/packages/google-cloud-service-usage/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-service-usage/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-service-usage/tests/unit/gapic/service_usage_v1/test_service_usage.py b/packages/google-cloud-service-usage/tests/unit/gapic/service_usage_v1/test_service_usage.py index ea42b50a15f4..f84e40126f6d 100644 --- a/packages/google-cloud-service-usage/tests/unit/gapic/service_usage_v1/test_service_usage.py +++ b/packages/google-cloud-service-usage/tests/unit/gapic/service_usage_v1/test_service_usage.py @@ -2344,6 +2344,9 @@ def test_list_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Service) for i in results) @@ -2432,6 +2435,8 @@ async def test_list_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3202,6 +3207,9 @@ def test_list_services_rest_pager(transport: str = "rest"): pager = client.list_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Service) for i in results) diff --git a/packages/google-cloud-servicehealth/noxfile.py b/packages/google-cloud-servicehealth/noxfile.py index 0fc8677b4458..534989e0ce1c 100644 --- a/packages/google-cloud-servicehealth/noxfile.py +++ b/packages/google-cloud-servicehealth/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-servicehealth/testing/constraints-3.15.txt b/packages/google-cloud-servicehealth/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-servicehealth/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-servicehealth/tests/unit/gapic/servicehealth_v1/test_service_health.py b/packages/google-cloud-servicehealth/tests/unit/gapic/servicehealth_v1/test_service_health.py index e77ae0c1e862..7fd5ecac7f72 100644 --- a/packages/google-cloud-servicehealth/tests/unit/gapic/servicehealth_v1/test_service_health.py +++ b/packages/google-cloud-servicehealth/tests/unit/gapic/servicehealth_v1/test_service_health.py @@ -1702,6 +1702,9 @@ def test_list_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, event_resources.Event) for i in results) @@ -1790,6 +1793,8 @@ async def test_list_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2609,6 +2614,9 @@ def test_list_organization_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, event_resources.OrganizationEvent) for i in results) @@ -2701,6 +2709,8 @@ async def test_list_organization_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3547,6 +3557,9 @@ def test_list_organization_impacts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, event_resources.OrganizationImpact) for i in results) @@ -3639,6 +3652,8 @@ async def test_list_organization_impacts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4293,6 +4308,9 @@ def test_list_events_rest_pager(transport: str = "rest"): pager = client.list_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, event_resources.Event) for i in results) @@ -4735,6 +4753,9 @@ def test_list_organization_events_rest_pager(transport: str = "rest"): pager = client.list_organization_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, event_resources.OrganizationEvent) for i in results) @@ -5185,6 +5206,9 @@ def test_list_organization_impacts_rest_pager(transport: str = "rest"): pager = client.list_organization_impacts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, event_resources.OrganizationImpact) for i in results) diff --git a/packages/google-cloud-shell/noxfile.py b/packages/google-cloud-shell/noxfile.py index e28e2365335d..9d3d25be7a77 100644 --- a/packages/google-cloud-shell/noxfile.py +++ b/packages/google-cloud-shell/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-shell/testing/constraints-3.15.txt b/packages/google-cloud-shell/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-shell/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-source-context/noxfile.py b/packages/google-cloud-source-context/noxfile.py index 6488b4a11907..419f18a38631 100644 --- a/packages/google-cloud-source-context/noxfile.py +++ b/packages/google-cloud-source-context/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-source-context/testing/constraints-3.15.txt b/packages/google-cloud-source-context/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-source-context/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-spanner/testing/constraints-3.15.txt b/packages/google-cloud-spanner/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-spanner/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-spanner/tests/unit/gapic/spanner_admin_database_v1/test_database_admin.py b/packages/google-cloud-spanner/tests/unit/gapic/spanner_admin_database_v1/test_database_admin.py index a96f13f36d22..e1a8ed90120d 100644 --- a/packages/google-cloud-spanner/tests/unit/gapic/spanner_admin_database_v1/test_database_admin.py +++ b/packages/google-cloud-spanner/tests/unit/gapic/spanner_admin_database_v1/test_database_admin.py @@ -1724,6 +1724,9 @@ def test_list_databases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, spanner_database_admin.Database) for i in results) @@ -1812,6 +1815,8 @@ async def test_list_databases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7068,6 +7073,9 @@ def test_list_backups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup.Backup) for i in results) @@ -7156,6 +7164,8 @@ async def test_list_backups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7961,6 +7971,9 @@ def test_list_database_operations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, operations_pb2.Operation) for i in results) @@ -8053,6 +8066,8 @@ async def test_list_database_operations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8508,6 +8523,9 @@ def test_list_backup_operations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, operations_pb2.Operation) for i in results) @@ -8600,6 +8618,8 @@ async def test_list_backup_operations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9050,6 +9070,9 @@ def test_list_database_roles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, spanner_database_admin.DatabaseRole) for i in results) @@ -9142,6 +9165,8 @@ async def test_list_database_roles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11322,6 +11347,9 @@ def test_list_backup_schedules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup_schedule.BackupSchedule) for i in results) @@ -11414,6 +11442,8 @@ async def test_list_backup_schedules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12013,6 +12043,9 @@ def test_list_databases_rest_pager(transport: str = "rest"): pager = client.list_databases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, spanner_database_admin.Database) for i in results) @@ -14885,6 +14918,9 @@ def test_list_backups_rest_pager(transport: str = "rest"): pager = client.list_backups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup.Backup) for i in results) @@ -15348,6 +15384,9 @@ def test_list_database_operations_rest_pager(transport: str = "rest"): pager = client.list_database_operations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, operations_pb2.Operation) for i in results) @@ -15611,6 +15650,9 @@ def test_list_backup_operations_rest_pager(transport: str = "rest"): pager = client.list_backup_operations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, operations_pb2.Operation) for i in results) @@ -15878,6 +15920,9 @@ def test_list_database_roles_rest_pager(transport: str = "rest"): pager = client.list_database_roles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, spanner_database_admin.DatabaseRole) for i in results) @@ -17111,6 +17156,9 @@ def test_list_backup_schedules_rest_pager(transport: str = "rest"): pager = client.list_backup_schedules(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, backup_schedule.BackupSchedule) for i in results) diff --git a/packages/google-cloud-spanner/tests/unit/gapic/spanner_admin_instance_v1/test_instance_admin.py b/packages/google-cloud-spanner/tests/unit/gapic/spanner_admin_instance_v1/test_instance_admin.py index 9194e3469916..da65ea1a6402 100644 --- a/packages/google-cloud-spanner/tests/unit/gapic/spanner_admin_instance_v1/test_instance_admin.py +++ b/packages/google-cloud-spanner/tests/unit/gapic/spanner_admin_instance_v1/test_instance_admin.py @@ -1733,6 +1733,9 @@ def test_list_instance_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1827,6 +1830,8 @@ async def test_list_instance_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3751,6 +3756,9 @@ def test_list_instance_config_operations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, operations_pb2.Operation) for i in results) @@ -3843,6 +3851,8 @@ async def test_list_instance_config_operations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4281,6 +4291,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, spanner_instance_admin.Instance) for i in results) @@ -4369,6 +4382,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4826,6 +4841,9 @@ def test_list_instance_partitions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4920,6 +4938,8 @@ async def test_list_instance_partitions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9270,6 +9290,9 @@ def test_list_instance_partition_operations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, operations_pb2.Operation) for i in results) @@ -9362,6 +9385,8 @@ async def test_list_instance_partition_operations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9923,6 +9948,9 @@ def test_list_instance_configs_rest_pager(transport: str = "rest"): pager = client.list_instance_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -10959,6 +10987,9 @@ def test_list_instance_config_operations_rest_pager(transport: str = "rest"): pager = client.list_instance_config_operations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, operations_pb2.Operation) for i in results) @@ -11219,6 +11250,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, spanner_instance_admin.Instance) for i in results) @@ -11487,6 +11521,9 @@ def test_list_instance_partitions_rest_pager(transport: str = "rest"): pager = client.list_instance_partitions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -13809,6 +13846,9 @@ def test_list_instance_partition_operations_rest_pager(transport: str = "rest"): pager = client.list_instance_partition_operations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, operations_pb2.Operation) for i in results) diff --git a/packages/google-cloud-spanner/tests/unit/gapic/spanner_v1/test_spanner.py b/packages/google-cloud-spanner/tests/unit/gapic/spanner_v1/test_spanner.py index da2281faa1d4..132de5012781 100644 --- a/packages/google-cloud-spanner/tests/unit/gapic/spanner_v1/test_spanner.py +++ b/packages/google-cloud-spanner/tests/unit/gapic/spanner_v1/test_spanner.py @@ -2664,6 +2664,9 @@ def test_list_sessions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, spanner.Session) for i in results) @@ -2752,6 +2755,8 @@ async def test_list_sessions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7435,6 +7440,9 @@ def test_list_sessions_rest_pager(transport: str = "rest"): pager = client.list_sessions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, spanner.Session) for i in results) diff --git a/packages/google-cloud-speech/noxfile.py b/packages/google-cloud-speech/noxfile.py index bc07809189ba..932360209bb3 100644 --- a/packages/google-cloud-speech/noxfile.py +++ b/packages/google-cloud-speech/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", # TODO(https://github.com/googleapis/google-cloud-python/issues/16083) @@ -567,7 +576,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-speech/testing/constraints-3.15.txt b/packages/google-cloud-speech/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-speech/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-speech/tests/unit/gapic/speech_v1/test_adaptation.py b/packages/google-cloud-speech/tests/unit/gapic/speech_v1/test_adaptation.py index 613ddb49a3ae..977208e06af1 100644 --- a/packages/google-cloud-speech/tests/unit/gapic/speech_v1/test_adaptation.py +++ b/packages/google-cloud-speech/tests/unit/gapic/speech_v1/test_adaptation.py @@ -2344,6 +2344,9 @@ def test_list_phrase_set_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.PhraseSet) for i in results) @@ -2432,6 +2435,8 @@ async def test_list_phrase_set_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4252,6 +4257,9 @@ def test_list_custom_classes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.CustomClass) for i in results) @@ -4344,6 +4352,8 @@ async def test_list_custom_classes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5705,6 +5715,9 @@ def test_list_phrase_set_rest_pager(transport: str = "rest"): pager = client.list_phrase_set(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.PhraseSet) for i in results) @@ -6712,6 +6725,9 @@ def test_list_custom_classes_rest_pager(transport: str = "rest"): pager = client.list_custom_classes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.CustomClass) for i in results) diff --git a/packages/google-cloud-speech/tests/unit/gapic/speech_v1p1beta1/test_adaptation.py b/packages/google-cloud-speech/tests/unit/gapic/speech_v1p1beta1/test_adaptation.py index e50ea155c1e3..c05221a85426 100644 --- a/packages/google-cloud-speech/tests/unit/gapic/speech_v1p1beta1/test_adaptation.py +++ b/packages/google-cloud-speech/tests/unit/gapic/speech_v1p1beta1/test_adaptation.py @@ -2401,6 +2401,9 @@ def test_list_phrase_set_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.PhraseSet) for i in results) @@ -2489,6 +2492,8 @@ async def test_list_phrase_set_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4393,6 +4398,9 @@ def test_list_custom_classes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.CustomClass) for i in results) @@ -4485,6 +4493,8 @@ async def test_list_custom_classes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5877,6 +5887,9 @@ def test_list_phrase_set_rest_pager(transport: str = "rest"): pager = client.list_phrase_set(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.PhraseSet) for i in results) @@ -6885,6 +6898,9 @@ def test_list_custom_classes_rest_pager(transport: str = "rest"): pager = client.list_custom_classes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resource.CustomClass) for i in results) diff --git a/packages/google-cloud-speech/tests/unit/gapic/speech_v2/test_speech.py b/packages/google-cloud-speech/tests/unit/gapic/speech_v2/test_speech.py index 930e8ed34f28..04bf22d741b6 100644 --- a/packages/google-cloud-speech/tests/unit/gapic/speech_v2/test_speech.py +++ b/packages/google-cloud-speech/tests/unit/gapic/speech_v2/test_speech.py @@ -2004,6 +2004,9 @@ def test_list_recognizers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_speech.Recognizer) for i in results) @@ -2092,6 +2095,8 @@ async def test_list_recognizers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5827,6 +5832,9 @@ def test_list_custom_classes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_speech.CustomClass) for i in results) @@ -5919,6 +5927,8 @@ async def test_list_custom_classes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8122,6 +8132,9 @@ def test_list_phrase_sets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_speech.PhraseSet) for i in results) @@ -8210,6 +8223,8 @@ async def test_list_phrase_sets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10118,6 +10133,9 @@ def test_list_recognizers_rest_pager(transport: str = "rest"): pager = client.list_recognizers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_speech.Recognizer) for i in results) @@ -12081,6 +12099,9 @@ def test_list_custom_classes_rest_pager(transport: str = "rest"): pager = client.list_custom_classes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_speech.CustomClass) for i in results) @@ -13308,6 +13329,9 @@ def test_list_phrase_sets_rest_pager(transport: str = "rest"): pager = client.list_phrase_sets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_speech.PhraseSet) for i in results) diff --git a/packages/google-cloud-storage-control/noxfile.py b/packages/google-cloud-storage-control/noxfile.py index b4ade172c441..4486e3882221 100644 --- a/packages/google-cloud-storage-control/noxfile.py +++ b/packages/google-cloud-storage-control/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-storage-control/testing/constraints-3.15.txt b/packages/google-cloud-storage-control/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-storage-control/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-storage-control/tests/unit/gapic/storage_control_v2/test_storage_control.py b/packages/google-cloud-storage-control/tests/unit/gapic/storage_control_v2/test_storage_control.py index c3bb6e2cceaa..5ae127f92fbb 100644 --- a/packages/google-cloud-storage-control/tests/unit/gapic/storage_control_v2/test_storage_control.py +++ b/packages/google-cloud-storage-control/tests/unit/gapic/storage_control_v2/test_storage_control.py @@ -2628,6 +2628,9 @@ def test_list_folders_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storage_control.Folder) for i in results) @@ -2716,6 +2719,8 @@ async def test_list_folders_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4940,6 +4945,9 @@ def test_list_managed_folders_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storage_control.ManagedFolder) for i in results) @@ -5032,6 +5040,8 @@ async def test_list_managed_folders_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7313,6 +7323,9 @@ def test_list_anywhere_caches_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storage_control.AnywhereCache) for i in results) @@ -7405,6 +7418,8 @@ async def test_list_anywhere_caches_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11268,6 +11283,9 @@ def test_list_intelligence_findings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storage_control.IntelligenceFinding) for i in results) @@ -11360,6 +11378,8 @@ async def test_list_intelligence_findings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11819,6 +11839,9 @@ def test_summarize_intelligence_findings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storage_control.FindingSummary) for i in results) @@ -11911,6 +11934,8 @@ async def test_summarize_intelligence_findings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12713,6 +12738,9 @@ def test_list_intelligence_finding_revisions_pager(transport_name: str = "grpc") assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -12807,6 +12835,8 @@ async def test_list_intelligence_finding_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14713,6 +14743,9 @@ def test_list_intelligence_findings_rest_pager(transport: str = "rest"): pager = client.list_intelligence_findings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storage_control.IntelligenceFinding) for i in results) @@ -14985,6 +15018,9 @@ def test_summarize_intelligence_findings_rest_pager(transport: str = "rest"): pager = client.summarize_intelligence_findings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storage_control.FindingSummary) for i in results) @@ -15450,6 +15486,9 @@ def test_list_intelligence_finding_revisions_rest_pager(transport: str = "rest") pager = client.list_intelligence_finding_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-storage-transfer/noxfile.py b/packages/google-cloud-storage-transfer/noxfile.py index ef9feee7ac3a..8569f444bc68 100644 --- a/packages/google-cloud-storage-transfer/noxfile.py +++ b/packages/google-cloud-storage-transfer/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-storage-transfer/testing/constraints-3.15.txt b/packages/google-cloud-storage-transfer/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-storage-transfer/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-storage-transfer/tests/unit/gapic/storage_transfer_v1/test_storage_transfer_service.py b/packages/google-cloud-storage-transfer/tests/unit/gapic/storage_transfer_v1/test_storage_transfer_service.py index a164ae3caa2c..1eaa6f0d3988 100644 --- a/packages/google-cloud-storage-transfer/tests/unit/gapic/storage_transfer_v1/test_storage_transfer_service.py +++ b/packages/google-cloud-storage-transfer/tests/unit/gapic/storage_transfer_v1/test_storage_transfer_service.py @@ -2655,6 +2655,9 @@ def test_list_transfer_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, transfer_types.TransferJob) for i in results) @@ -2747,6 +2750,8 @@ async def test_list_transfer_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5233,6 +5238,9 @@ def test_list_agent_pools_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, transfer_types.AgentPool) for i in results) @@ -5321,6 +5329,8 @@ async def test_list_agent_pools_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6432,6 +6442,9 @@ def test_list_transfer_jobs_rest_pager(transport: str = "rest"): pager = client.list_transfer_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, transfer_types.TransferJob) for i in results) @@ -7774,6 +7787,9 @@ def test_list_agent_pools_rest_pager(transport: str = "rest"): pager = client.list_agent_pools(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, transfer_types.AgentPool) for i in results) diff --git a/packages/google-cloud-storage/noxfile.py b/packages/google-cloud-storage/noxfile.py index 6e8d41c60b3d..a79d10ca95f7 100644 --- a/packages/google-cloud-storage/noxfile.py +++ b/packages/google-cloud-storage/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( diff --git a/packages/google-cloud-storage/testing/constraints-3.15.txt b/packages/google-cloud-storage/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-storage/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-storage/tests/unit/gapic/_storage_v2/test_storage.py b/packages/google-cloud-storage/tests/unit/gapic/_storage_v2/test_storage.py index f8de9bed61d6..4d334bd80de4 100644 --- a/packages/google-cloud-storage/tests/unit/gapic/_storage_v2/test_storage.py +++ b/packages/google-cloud-storage/tests/unit/gapic/_storage_v2/test_storage.py @@ -2444,6 +2444,9 @@ def test_list_buckets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storage.Bucket) for i in results) @@ -2532,6 +2535,8 @@ async def test_list_buckets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6977,6 +6982,9 @@ def test_list_objects_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storage.Object) for i in results) @@ -7065,6 +7073,8 @@ async def test_list_objects_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-storagebatchoperations/noxfile.py b/packages/google-cloud-storagebatchoperations/noxfile.py index dbd49e2ac733..b52bab8a58bc 100644 --- a/packages/google-cloud-storagebatchoperations/noxfile.py +++ b/packages/google-cloud-storagebatchoperations/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-storagebatchoperations/testing/constraints-3.15.txt b/packages/google-cloud-storagebatchoperations/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-storagebatchoperations/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-storagebatchoperations/tests/unit/gapic/storagebatchoperations_v1/test_storage_batch_operations.py b/packages/google-cloud-storagebatchoperations/tests/unit/gapic/storagebatchoperations_v1/test_storage_batch_operations.py index 0514513dcc96..d280a8aa24fc 100644 --- a/packages/google-cloud-storagebatchoperations/tests/unit/gapic/storagebatchoperations_v1/test_storage_batch_operations.py +++ b/packages/google-cloud-storagebatchoperations/tests/unit/gapic/storagebatchoperations_v1/test_storage_batch_operations.py @@ -1781,6 +1781,9 @@ def test_list_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storage_batch_operations_types.Job) for i in results) @@ -1869,6 +1872,8 @@ async def test_list_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3640,6 +3645,9 @@ def test_list_bucket_operations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3735,6 +3743,8 @@ async def test_list_bucket_operations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4395,6 +4405,9 @@ def test_list_jobs_rest_pager(transport: str = "rest"): pager = client.list_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storage_batch_operations_types.Job) for i in results) @@ -5423,6 +5436,9 @@ def test_list_bucket_operations_rest_pager(transport: str = "rest"): pager = client.list_bucket_operations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-storageinsights/noxfile.py b/packages/google-cloud-storageinsights/noxfile.py index dfe9e473684a..afdf85f0d691 100644 --- a/packages/google-cloud-storageinsights/noxfile.py +++ b/packages/google-cloud-storageinsights/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-storageinsights/testing/constraints-3.15.txt b/packages/google-cloud-storageinsights/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-storageinsights/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-storageinsights/tests/unit/gapic/storageinsights_v1/test_storage_insights.py b/packages/google-cloud-storageinsights/tests/unit/gapic/storageinsights_v1/test_storage_insights.py index cabc75762e43..694f3ac4a14a 100644 --- a/packages/google-cloud-storageinsights/tests/unit/gapic/storageinsights_v1/test_storage_insights.py +++ b/packages/google-cloud-storageinsights/tests/unit/gapic/storageinsights_v1/test_storage_insights.py @@ -1763,6 +1763,9 @@ def test_list_report_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storageinsights.ReportConfig) for i in results) @@ -1855,6 +1858,8 @@ async def test_list_report_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3709,6 +3714,9 @@ def test_list_report_details_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storageinsights.ReportDetail) for i in results) @@ -3801,6 +3809,8 @@ async def test_list_report_details_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4609,6 +4619,9 @@ def test_list_dataset_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storageinsights.DatasetConfig) for i in results) @@ -4701,6 +4714,8 @@ async def test_list_dataset_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7127,6 +7142,9 @@ def test_list_report_configs_rest_pager(transport: str = "rest"): pager = client.list_report_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storageinsights.ReportConfig) for i in results) @@ -8170,6 +8188,9 @@ def test_list_report_details_rest_pager(transport: str = "rest"): pager = client.list_report_details(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storageinsights.ReportDetail) for i in results) @@ -8616,6 +8637,9 @@ def test_list_dataset_configs_rest_pager(transport: str = "rest"): pager = client.list_dataset_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, storageinsights.DatasetConfig) for i in results) diff --git a/packages/google-cloud-support/noxfile.py b/packages/google-cloud-support/noxfile.py index f5db58067a57..6e118466c18e 100644 --- a/packages/google-cloud-support/noxfile.py +++ b/packages/google-cloud-support/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-support/testing/constraints-3.15.txt b/packages/google-cloud-support/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-support/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-support/tests/unit/gapic/support_v2/test_case_attachment_service.py b/packages/google-cloud-support/tests/unit/gapic/support_v2/test_case_attachment_service.py index e785de27e8ca..228a78887695 100644 --- a/packages/google-cloud-support/tests/unit/gapic/support_v2/test_case_attachment_service.py +++ b/packages/google-cloud-support/tests/unit/gapic/support_v2/test_case_attachment_service.py @@ -1763,6 +1763,9 @@ def test_list_attachments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, attachment.Attachment) for i in results) @@ -1851,6 +1854,8 @@ async def test_list_attachments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2488,6 +2493,9 @@ def test_list_attachments_rest_pager(transport: str = "rest"): pager = client.list_attachments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, attachment.Attachment) for i in results) diff --git a/packages/google-cloud-support/tests/unit/gapic/support_v2/test_case_service.py b/packages/google-cloud-support/tests/unit/gapic/support_v2/test_case_service.py index 9e4040368c6c..1d624bbc2945 100644 --- a/packages/google-cloud-support/tests/unit/gapic/support_v2/test_case_service.py +++ b/packages/google-cloud-support/tests/unit/gapic/support_v2/test_case_service.py @@ -2021,6 +2021,9 @@ def test_list_cases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, case.Case) for i in results) @@ -2109,6 +2112,8 @@ async def test_list_cases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2457,6 +2462,9 @@ def test_search_cases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, case.Case) for i in results) @@ -2545,6 +2553,8 @@ async def test_search_cases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4138,6 +4148,9 @@ def test_search_case_classifications_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, case.CaseClassification) for i in results) @@ -4230,6 +4243,8 @@ async def test_search_case_classifications_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4702,6 +4717,9 @@ def test_list_cases_rest_pager(transport: str = "rest"): pager = client.list_cases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, case.Case) for i in results) @@ -4799,6 +4817,9 @@ def test_search_cases_rest_pager(transport: str = "rest"): pager = client.search_cases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, case.Case) for i in results) @@ -5502,6 +5523,9 @@ def test_search_case_classifications_rest_pager(transport: str = "rest"): pager = client.search_case_classifications(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, case.CaseClassification) for i in results) diff --git a/packages/google-cloud-support/tests/unit/gapic/support_v2/test_comment_service.py b/packages/google-cloud-support/tests/unit/gapic/support_v2/test_comment_service.py index dd63298908a5..1446c1679fb4 100644 --- a/packages/google-cloud-support/tests/unit/gapic/support_v2/test_comment_service.py +++ b/packages/google-cloud-support/tests/unit/gapic/support_v2/test_comment_service.py @@ -1700,6 +1700,9 @@ def test_list_comments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, comment.Comment) for i in results) @@ -1788,6 +1791,8 @@ async def test_list_comments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2753,6 +2758,9 @@ def test_list_comments_rest_pager(transport: str = "rest"): pager = client.list_comments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, comment.Comment) for i in results) diff --git a/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_case_attachment_service.py b/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_case_attachment_service.py index 02b39583ea81..fec42dd0ff5a 100644 --- a/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_case_attachment_service.py +++ b/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_case_attachment_service.py @@ -1763,6 +1763,9 @@ def test_list_attachments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, attachment.Attachment) for i in results) @@ -1851,6 +1854,8 @@ async def test_list_attachments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2489,6 +2494,9 @@ def test_list_attachments_rest_pager(transport: str = "rest"): pager = client.list_attachments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, attachment.Attachment) for i in results) diff --git a/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_case_service.py b/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_case_service.py index 61397df0aac0..50c2851efc60 100644 --- a/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_case_service.py +++ b/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_case_service.py @@ -2021,6 +2021,9 @@ def test_list_cases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, case.Case) for i in results) @@ -2109,6 +2112,8 @@ async def test_list_cases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2457,6 +2462,9 @@ def test_search_cases_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, case.Case) for i in results) @@ -2545,6 +2553,8 @@ async def test_search_cases_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4138,6 +4148,9 @@ def test_search_case_classifications_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, case.CaseClassification) for i in results) @@ -4230,6 +4243,8 @@ async def test_search_case_classifications_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4704,6 +4719,9 @@ def test_list_cases_rest_pager(transport: str = "rest"): pager = client.list_cases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, case.Case) for i in results) @@ -4801,6 +4819,9 @@ def test_search_cases_rest_pager(transport: str = "rest"): pager = client.search_cases(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, case.Case) for i in results) @@ -5504,6 +5525,9 @@ def test_search_case_classifications_rest_pager(transport: str = "rest"): pager = client.search_case_classifications(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, case.CaseClassification) for i in results) diff --git a/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_comment_service.py b/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_comment_service.py index 494a823b9ded..8fbc44fcdb66 100644 --- a/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_comment_service.py +++ b/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_comment_service.py @@ -1700,6 +1700,9 @@ def test_list_comments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, comment.Comment) for i in results) @@ -1788,6 +1791,8 @@ async def test_list_comments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2753,6 +2758,9 @@ def test_list_comments_rest_pager(transport: str = "rest"): pager = client.list_comments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, comment.Comment) for i in results) diff --git a/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_feed_service.py b/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_feed_service.py index 120bf0204ece..905612269be2 100644 --- a/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_feed_service.py +++ b/packages/google-cloud-support/tests/unit/gapic/support_v2beta/test_feed_service.py @@ -1660,6 +1660,9 @@ def test_show_feed_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, feed_item.FeedItem) for i in results) @@ -1748,6 +1751,8 @@ async def test_show_feed_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2045,6 +2050,9 @@ def test_show_feed_rest_pager(transport: str = "rest"): pager = client.show_feed(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, feed_item.FeedItem) for i in results) diff --git a/packages/google-cloud-talent/noxfile.py b/packages/google-cloud-talent/noxfile.py index c77bb19d1a87..301330268630 100644 --- a/packages/google-cloud-talent/noxfile.py +++ b/packages/google-cloud-talent/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-talent/testing/constraints-3.15.txt b/packages/google-cloud-talent/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-talent/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-talent/tests/unit/gapic/talent_v4/test_company_service.py b/packages/google-cloud-talent/tests/unit/gapic/talent_v4/test_company_service.py index bd63960a8c24..54028c8ac203 100644 --- a/packages/google-cloud-talent/tests/unit/gapic/talent_v4/test_company_service.py +++ b/packages/google-cloud-talent/tests/unit/gapic/talent_v4/test_company_service.py @@ -3150,6 +3150,9 @@ def test_list_companies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, company.Company) for i in results) @@ -3238,6 +3241,8 @@ async def test_list_companies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4256,6 +4261,9 @@ def test_list_companies_rest_pager(transport: str = "rest"): pager = client.list_companies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, company.Company) for i in results) diff --git a/packages/google-cloud-talent/tests/unit/gapic/talent_v4/test_job_service.py b/packages/google-cloud-talent/tests/unit/gapic/talent_v4/test_job_service.py index 74bb4d737202..fb7e9aa9c6a8 100644 --- a/packages/google-cloud-talent/tests/unit/gapic/talent_v4/test_job_service.py +++ b/packages/google-cloud-talent/tests/unit/gapic/talent_v4/test_job_service.py @@ -4241,6 +4241,9 @@ def test_list_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) @@ -4329,6 +4332,8 @@ async def test_list_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6441,6 +6446,9 @@ def test_list_jobs_rest_pager(transport: str = "rest"): pager = client.list_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) diff --git a/packages/google-cloud-talent/tests/unit/gapic/talent_v4/test_tenant_service.py b/packages/google-cloud-talent/tests/unit/gapic/talent_v4/test_tenant_service.py index fbf535da05a0..b7461feae7de 100644 --- a/packages/google-cloud-talent/tests/unit/gapic/talent_v4/test_tenant_service.py +++ b/packages/google-cloud-talent/tests/unit/gapic/talent_v4/test_tenant_service.py @@ -2998,6 +2998,9 @@ def test_list_tenants_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tenant.Tenant) for i in results) @@ -3086,6 +3089,8 @@ async def test_list_tenants_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4092,6 +4097,9 @@ def test_list_tenants_rest_pager(transport: str = "rest"): pager = client.list_tenants(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tenant.Tenant) for i in results) diff --git a/packages/google-cloud-talent/tests/unit/gapic/talent_v4beta1/test_company_service.py b/packages/google-cloud-talent/tests/unit/gapic/talent_v4beta1/test_company_service.py index 2072e51cc8c1..e0620297c0b2 100644 --- a/packages/google-cloud-talent/tests/unit/gapic/talent_v4beta1/test_company_service.py +++ b/packages/google-cloud-talent/tests/unit/gapic/talent_v4beta1/test_company_service.py @@ -3140,6 +3140,9 @@ def test_list_companies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, company.Company) for i in results) @@ -3228,6 +3231,8 @@ async def test_list_companies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4246,6 +4251,9 @@ def test_list_companies_rest_pager(transport: str = "rest"): pager = client.list_companies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, company.Company) for i in results) diff --git a/packages/google-cloud-talent/tests/unit/gapic/talent_v4beta1/test_job_service.py b/packages/google-cloud-talent/tests/unit/gapic/talent_v4beta1/test_job_service.py index 98ba9352823a..8e8c83d5e1b1 100644 --- a/packages/google-cloud-talent/tests/unit/gapic/talent_v4beta1/test_job_service.py +++ b/packages/google-cloud-talent/tests/unit/gapic/talent_v4beta1/test_job_service.py @@ -4223,6 +4223,9 @@ def test_list_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) @@ -4311,6 +4314,8 @@ async def test_list_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4671,6 +4676,9 @@ def test_search_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -4761,6 +4769,8 @@ async def test_search_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5142,6 +5152,9 @@ def test_search_jobs_for_alert_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -5236,6 +5249,8 @@ async def test_search_jobs_for_alert_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6834,6 +6849,9 @@ def test_list_jobs_rest_pager(transport: str = "rest"): pager = client.list_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, job.Job) for i in results) @@ -7022,6 +7040,9 @@ def test_search_jobs_rest_pager(transport: str = "rest"): pager = client.search_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -7219,6 +7240,9 @@ def test_search_jobs_for_alert_rest_pager(transport: str = "rest"): pager = client.search_jobs_for_alert(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-cloud-talent/tests/unit/gapic/talent_v4beta1/test_tenant_service.py b/packages/google-cloud-talent/tests/unit/gapic/talent_v4beta1/test_tenant_service.py index 4c1be12c065d..f152ce3ebf88 100644 --- a/packages/google-cloud-talent/tests/unit/gapic/talent_v4beta1/test_tenant_service.py +++ b/packages/google-cloud-talent/tests/unit/gapic/talent_v4beta1/test_tenant_service.py @@ -3036,6 +3036,9 @@ def test_list_tenants_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tenant.Tenant) for i in results) @@ -3124,6 +3127,8 @@ async def test_list_tenants_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4127,6 +4132,9 @@ def test_list_tenants_rest_pager(transport: str = "rest"): pager = client.list_tenants(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tenant.Tenant) for i in results) diff --git a/packages/google-cloud-tasks/noxfile.py b/packages/google-cloud-tasks/noxfile.py index 5d43c1960802..9e15020b9822 100644 --- a/packages/google-cloud-tasks/noxfile.py +++ b/packages/google-cloud-tasks/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-tasks/testing/constraints-3.15.txt b/packages/google-cloud-tasks/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-tasks/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-tasks/tests/unit/gapic/tasks_v2/test_cloud_tasks.py b/packages/google-cloud-tasks/tests/unit/gapic/tasks_v2/test_cloud_tasks.py index 25d9a119f929..114524073da4 100644 --- a/packages/google-cloud-tasks/tests/unit/gapic/tasks_v2/test_cloud_tasks.py +++ b/packages/google-cloud-tasks/tests/unit/gapic/tasks_v2/test_cloud_tasks.py @@ -1670,6 +1670,9 @@ def test_list_queues_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, queue.Queue) for i in results) @@ -1758,6 +1761,8 @@ async def test_list_queues_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5510,6 +5515,9 @@ def test_list_tasks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, task.Task) for i in results) @@ -5598,6 +5606,8 @@ async def test_list_tasks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7209,6 +7219,9 @@ def test_list_queues_rest_pager(transport: str = "rest"): pager = client.list_queues(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, queue.Queue) for i in results) @@ -9260,6 +9273,9 @@ def test_list_tasks_rest_pager(transport: str = "rest"): pager = client.list_tasks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, task.Task) for i in results) diff --git a/packages/google-cloud-tasks/tests/unit/gapic/tasks_v2beta2/test_cloud_tasks.py b/packages/google-cloud-tasks/tests/unit/gapic/tasks_v2beta2/test_cloud_tasks.py index 8a9296aca610..bb87b5dae866 100644 --- a/packages/google-cloud-tasks/tests/unit/gapic/tasks_v2beta2/test_cloud_tasks.py +++ b/packages/google-cloud-tasks/tests/unit/gapic/tasks_v2beta2/test_cloud_tasks.py @@ -1671,6 +1671,9 @@ def test_list_queues_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, queue.Queue) for i in results) @@ -1759,6 +1762,8 @@ async def test_list_queues_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5692,6 +5697,9 @@ def test_list_tasks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, task.Task) for i in results) @@ -5780,6 +5788,8 @@ async def test_list_tasks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8702,6 +8712,9 @@ def test_list_queues_rest_pager(transport: str = "rest"): pager = client.list_queues(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, queue.Queue) for i in results) @@ -10768,6 +10781,9 @@ def test_list_tasks_rest_pager(transport: str = "rest"): pager = client.list_tasks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, task.Task) for i in results) diff --git a/packages/google-cloud-tasks/tests/unit/gapic/tasks_v2beta3/test_cloud_tasks.py b/packages/google-cloud-tasks/tests/unit/gapic/tasks_v2beta3/test_cloud_tasks.py index d7116eb391cf..4dae086b76df 100644 --- a/packages/google-cloud-tasks/tests/unit/gapic/tasks_v2beta3/test_cloud_tasks.py +++ b/packages/google-cloud-tasks/tests/unit/gapic/tasks_v2beta3/test_cloud_tasks.py @@ -1670,6 +1670,9 @@ def test_list_queues_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, queue.Queue) for i in results) @@ -1758,6 +1761,8 @@ async def test_list_queues_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5534,6 +5539,9 @@ def test_list_tasks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, task.Task) for i in results) @@ -5622,6 +5630,8 @@ async def test_list_tasks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7236,6 +7246,9 @@ def test_list_queues_rest_pager(transport: str = "rest"): pager = client.list_queues(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, queue.Queue) for i in results) @@ -9292,6 +9305,9 @@ def test_list_tasks_rest_pager(transport: str = "rest"): pager = client.list_tasks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, task.Task) for i in results) diff --git a/packages/google-cloud-telcoautomation/noxfile.py b/packages/google-cloud-telcoautomation/noxfile.py index 0516d14eba3d..d5000f8ef93b 100644 --- a/packages/google-cloud-telcoautomation/noxfile.py +++ b/packages/google-cloud-telcoautomation/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-telcoautomation/testing/constraints-3.15.txt b/packages/google-cloud-telcoautomation/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-telcoautomation/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-telcoautomation/tests/unit/gapic/telcoautomation_v1/test_telco_automation.py b/packages/google-cloud-telcoautomation/tests/unit/gapic/telcoautomation_v1/test_telco_automation.py index fda165bd692e..8ece08d1cb67 100644 --- a/packages/google-cloud-telcoautomation/tests/unit/gapic/telcoautomation_v1/test_telco_automation.py +++ b/packages/google-cloud-telcoautomation/tests/unit/gapic/telcoautomation_v1/test_telco_automation.py @@ -1764,6 +1764,9 @@ def test_list_orchestration_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.OrchestrationCluster) for i in results) @@ -1856,6 +1859,8 @@ async def test_list_orchestration_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3381,6 +3386,9 @@ def test_list_edge_slms_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.EdgeSlm) for i in results) @@ -3469,6 +3477,8 @@ async def test_list_edge_slms_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6341,6 +6351,9 @@ def test_list_blueprints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Blueprint) for i in results) @@ -6429,6 +6442,8 @@ async def test_list_blueprints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7984,6 +7999,9 @@ def test_list_blueprint_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Blueprint) for i in results) @@ -8076,6 +8094,8 @@ async def test_list_blueprint_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8543,6 +8563,9 @@ def test_search_blueprint_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Blueprint) for i in results) @@ -8635,6 +8658,8 @@ async def test_search_blueprint_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9102,6 +9127,9 @@ def test_search_deployment_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Deployment) for i in results) @@ -9194,6 +9222,8 @@ async def test_search_deployment_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9986,6 +10016,9 @@ def test_list_public_blueprints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.PublicBlueprint) for i in results) @@ -10078,6 +10111,8 @@ async def test_list_public_blueprints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12344,6 +12379,9 @@ def test_list_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Deployment) for i in results) @@ -12432,6 +12470,8 @@ async def test_list_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12885,6 +12925,9 @@ def test_list_deployment_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Deployment) for i in results) @@ -12977,6 +13020,8 @@ async def test_list_deployment_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15225,6 +15270,9 @@ def test_list_hydrated_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.HydratedDeployment) for i in results) @@ -15317,6 +15365,8 @@ async def test_list_hydrated_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16345,6 +16395,9 @@ def test_list_orchestration_clusters_rest_pager(transport: str = "rest"): pager = client.list_orchestration_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.OrchestrationCluster) for i in results) @@ -17205,6 +17258,9 @@ def test_list_edge_slms_rest_pager(transport: str = "rest"): pager = client.list_edge_slms(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.EdgeSlm) for i in results) @@ -18785,6 +18841,9 @@ def test_list_blueprints_rest_pager(transport: str = "rest"): pager = client.list_blueprints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Blueprint) for i in results) @@ -19601,6 +19660,9 @@ def test_list_blueprint_revisions_rest_pager(transport: str = "rest"): pager = client.list_blueprint_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Blueprint) for i in results) @@ -19891,6 +19953,9 @@ def test_search_blueprint_revisions_rest_pager(transport: str = "rest"): pager = client.search_blueprint_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Blueprint) for i in results) @@ -20183,6 +20248,9 @@ def test_search_deployment_revisions_rest_pager(transport: str = "rest"): pager = client.search_deployment_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Deployment) for i in results) @@ -20632,6 +20700,9 @@ def test_list_public_blueprints_rest_pager(transport: str = "rest"): pager = client.list_public_blueprints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.PublicBlueprint) for i in results) @@ -21829,6 +21900,9 @@ def test_list_deployments_rest_pager(transport: str = "rest"): pager = client.list_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Deployment) for i in results) @@ -22096,6 +22170,9 @@ def test_list_deployment_revisions_rest_pager(transport: str = "rest"): pager = client.list_deployment_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Deployment) for i in results) @@ -23305,6 +23382,9 @@ def test_list_hydrated_deployments_rest_pager(transport: str = "rest"): pager = client.list_hydrated_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.HydratedDeployment) for i in results) diff --git a/packages/google-cloud-telcoautomation/tests/unit/gapic/telcoautomation_v1alpha1/test_telco_automation.py b/packages/google-cloud-telcoautomation/tests/unit/gapic/telcoautomation_v1alpha1/test_telco_automation.py index 8add92dd4085..969eb51a1af4 100644 --- a/packages/google-cloud-telcoautomation/tests/unit/gapic/telcoautomation_v1alpha1/test_telco_automation.py +++ b/packages/google-cloud-telcoautomation/tests/unit/gapic/telcoautomation_v1alpha1/test_telco_automation.py @@ -1764,6 +1764,9 @@ def test_list_orchestration_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.OrchestrationCluster) for i in results) @@ -1856,6 +1859,8 @@ async def test_list_orchestration_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3381,6 +3386,9 @@ def test_list_edge_slms_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.EdgeSlm) for i in results) @@ -3469,6 +3477,8 @@ async def test_list_edge_slms_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6341,6 +6351,9 @@ def test_list_blueprints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Blueprint) for i in results) @@ -6429,6 +6442,8 @@ async def test_list_blueprints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7984,6 +7999,9 @@ def test_list_blueprint_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Blueprint) for i in results) @@ -8076,6 +8094,8 @@ async def test_list_blueprint_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8543,6 +8563,9 @@ def test_search_blueprint_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Blueprint) for i in results) @@ -8635,6 +8658,8 @@ async def test_search_blueprint_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9102,6 +9127,9 @@ def test_search_deployment_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Deployment) for i in results) @@ -9194,6 +9222,8 @@ async def test_search_deployment_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9986,6 +10016,9 @@ def test_list_public_blueprints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.PublicBlueprint) for i in results) @@ -10078,6 +10111,8 @@ async def test_list_public_blueprints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12344,6 +12379,9 @@ def test_list_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Deployment) for i in results) @@ -12432,6 +12470,8 @@ async def test_list_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12885,6 +12925,9 @@ def test_list_deployment_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Deployment) for i in results) @@ -12977,6 +13020,8 @@ async def test_list_deployment_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15225,6 +15270,9 @@ def test_list_hydrated_deployments_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.HydratedDeployment) for i in results) @@ -15317,6 +15365,8 @@ async def test_list_hydrated_deployments_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -16345,6 +16395,9 @@ def test_list_orchestration_clusters_rest_pager(transport: str = "rest"): pager = client.list_orchestration_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.OrchestrationCluster) for i in results) @@ -17206,6 +17259,9 @@ def test_list_edge_slms_rest_pager(transport: str = "rest"): pager = client.list_edge_slms(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.EdgeSlm) for i in results) @@ -18789,6 +18845,9 @@ def test_list_blueprints_rest_pager(transport: str = "rest"): pager = client.list_blueprints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Blueprint) for i in results) @@ -19605,6 +19664,9 @@ def test_list_blueprint_revisions_rest_pager(transport: str = "rest"): pager = client.list_blueprint_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Blueprint) for i in results) @@ -19895,6 +19957,9 @@ def test_search_blueprint_revisions_rest_pager(transport: str = "rest"): pager = client.search_blueprint_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Blueprint) for i in results) @@ -20187,6 +20252,9 @@ def test_search_deployment_revisions_rest_pager(transport: str = "rest"): pager = client.search_deployment_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Deployment) for i in results) @@ -20636,6 +20704,9 @@ def test_list_public_blueprints_rest_pager(transport: str = "rest"): pager = client.list_public_blueprints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.PublicBlueprint) for i in results) @@ -21833,6 +21904,9 @@ def test_list_deployments_rest_pager(transport: str = "rest"): pager = client.list_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Deployment) for i in results) @@ -22100,6 +22174,9 @@ def test_list_deployment_revisions_rest_pager(transport: str = "rest"): pager = client.list_deployment_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.Deployment) for i in results) @@ -23309,6 +23386,9 @@ def test_list_hydrated_deployments_rest_pager(transport: str = "rest"): pager = client.list_hydrated_deployments(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, telcoautomation.HydratedDeployment) for i in results) diff --git a/packages/google-cloud-texttospeech/noxfile.py b/packages/google-cloud-texttospeech/noxfile.py index b5467a458b91..86aca06a98c9 100644 --- a/packages/google-cloud-texttospeech/noxfile.py +++ b/packages/google-cloud-texttospeech/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-texttospeech/testing/constraints-3.15.txt b/packages/google-cloud-texttospeech/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-texttospeech/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-tpu/noxfile.py b/packages/google-cloud-tpu/noxfile.py index ad1769c6ddb5..771641b5e689 100644 --- a/packages/google-cloud-tpu/noxfile.py +++ b/packages/google-cloud-tpu/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-tpu/testing/constraints-3.15.txt b/packages/google-cloud-tpu/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-tpu/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-tpu/tests/unit/gapic/tpu_v1/test_tpu.py b/packages/google-cloud-tpu/tests/unit/gapic/tpu_v1/test_tpu.py index 45290acdd8d3..1ed8f3d6d00e 100644 --- a/packages/google-cloud-tpu/tests/unit/gapic/tpu_v1/test_tpu.py +++ b/packages/google-cloud-tpu/tests/unit/gapic/tpu_v1/test_tpu.py @@ -1587,6 +1587,9 @@ def test_list_nodes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.Node) for i in results) @@ -1675,6 +1678,8 @@ async def test_list_nodes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3920,6 +3925,9 @@ def test_list_tensor_flow_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.TensorFlowVersion) for i in results) @@ -4012,6 +4020,8 @@ async def test_list_tensor_flow_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4822,6 +4832,9 @@ def test_list_accelerator_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.AcceleratorType) for i in results) @@ -4914,6 +4927,8 @@ async def test_list_accelerator_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-tpu/tests/unit/gapic/tpu_v2/test_tpu.py b/packages/google-cloud-tpu/tests/unit/gapic/tpu_v2/test_tpu.py index 8fdebb88a973..7ccc0f269331 100644 --- a/packages/google-cloud-tpu/tests/unit/gapic/tpu_v2/test_tpu.py +++ b/packages/google-cloud-tpu/tests/unit/gapic/tpu_v2/test_tpu.py @@ -1613,6 +1613,9 @@ def test_list_nodes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.Node) for i in results) @@ -1701,6 +1704,8 @@ async def test_list_nodes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4022,6 +4027,9 @@ def test_list_queued_resources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.QueuedResource) for i in results) @@ -4114,6 +4122,8 @@ async def test_list_queued_resources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6247,6 +6257,9 @@ def test_list_accelerator_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.AcceleratorType) for i in results) @@ -6339,6 +6352,8 @@ async def test_list_accelerator_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7148,6 +7163,9 @@ def test_list_runtime_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.RuntimeVersion) for i in results) @@ -7240,6 +7258,8 @@ async def test_list_runtime_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8137,6 +8157,9 @@ def test_list_nodes_rest_pager(transport: str = "rest"): pager = client.list_nodes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.Node) for i in results) @@ -9360,6 +9383,9 @@ def test_list_queued_resources_rest_pager(transport: str = "rest"): pager = client.list_queued_resources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.QueuedResource) for i in results) @@ -10526,6 +10552,9 @@ def test_list_accelerator_types_rest_pager(transport: str = "rest"): pager = client.list_accelerator_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.AcceleratorType) for i in results) @@ -10975,6 +11004,9 @@ def test_list_runtime_versions_rest_pager(transport: str = "rest"): pager = client.list_runtime_versions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.RuntimeVersion) for i in results) diff --git a/packages/google-cloud-tpu/tests/unit/gapic/tpu_v2alpha1/test_tpu.py b/packages/google-cloud-tpu/tests/unit/gapic/tpu_v2alpha1/test_tpu.py index 1c9922d89609..6df333a56ecf 100644 --- a/packages/google-cloud-tpu/tests/unit/gapic/tpu_v2alpha1/test_tpu.py +++ b/packages/google-cloud-tpu/tests/unit/gapic/tpu_v2alpha1/test_tpu.py @@ -1593,6 +1593,9 @@ def test_list_nodes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.Node) for i in results) @@ -1681,6 +1684,8 @@ async def test_list_nodes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4270,6 +4275,9 @@ def test_list_queued_resources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.QueuedResource) for i in results) @@ -4362,6 +4370,8 @@ async def test_list_queued_resources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6758,6 +6768,9 @@ def test_list_accelerator_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.AcceleratorType) for i in results) @@ -6850,6 +6863,8 @@ async def test_list_accelerator_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7659,6 +7674,9 @@ def test_list_runtime_versions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.RuntimeVersion) for i in results) @@ -7751,6 +7769,8 @@ async def test_list_runtime_versions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8713,6 +8733,9 @@ def test_list_reservations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cloud_tpu.Reservation) for i in results) @@ -8805,6 +8828,8 @@ async def test_list_reservations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-trace/noxfile.py b/packages/google-cloud-trace/noxfile.py index 39a6649e1562..005e6e63c968 100644 --- a/packages/google-cloud-trace/noxfile.py +++ b/packages/google-cloud-trace/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-trace/testing/constraints-3.15.txt b/packages/google-cloud-trace/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-trace/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-trace/tests/unit/gapic/trace_v1/test_trace_service.py b/packages/google-cloud-trace/tests/unit/gapic/trace_v1/test_trace_service.py index 65dd6968f006..0b0d6f56435b 100644 --- a/packages/google-cloud-trace/tests/unit/gapic/trace_v1/test_trace_service.py +++ b/packages/google-cloud-trace/tests/unit/gapic/trace_v1/test_trace_service.py @@ -1684,6 +1684,9 @@ def test_list_traces_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, trace.Trace) for i in results) @@ -1772,6 +1775,8 @@ async def test_list_traces_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2734,6 +2739,9 @@ def test_list_traces_rest_pager(transport: str = "rest"): pager = client.list_traces(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, trace.Trace) for i in results) diff --git a/packages/google-cloud-translate/noxfile.py b/packages/google-cloud-translate/noxfile.py index 0f6ce885ea75..2a5699b8b1fd 100644 --- a/packages/google-cloud-translate/noxfile.py +++ b/packages/google-cloud-translate/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-translate/testing/constraints-3.15.txt b/packages/google-cloud-translate/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-translate/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-translate/tests/unit/gapic/translate_v3/test_translation_service.py b/packages/google-cloud-translate/tests/unit/gapic/translate_v3/test_translation_service.py index fd7d4b08a0f5..a17dbd55f88e 100644 --- a/packages/google-cloud-translate/tests/unit/gapic/translate_v3/test_translation_service.py +++ b/packages/google-cloud-translate/tests/unit/gapic/translate_v3/test_translation_service.py @@ -4832,6 +4832,9 @@ def test_list_glossaries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, translation_service.Glossary) for i in results) @@ -4920,6 +4923,8 @@ async def test_list_glossaries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6377,6 +6382,9 @@ def test_list_glossary_entries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common.GlossaryEntry) for i in results) @@ -6469,6 +6477,8 @@ async def test_list_glossary_entries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8626,6 +8636,9 @@ def test_list_datasets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, automl_translation.Dataset) for i in results) @@ -8714,6 +8727,8 @@ async def test_list_datasets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10562,6 +10577,9 @@ def test_list_adaptive_mt_datasets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, adaptive_mt.AdaptiveMtDataset) for i in results) @@ -10654,6 +10672,8 @@ async def test_list_adaptive_mt_datasets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12490,6 +12510,9 @@ def test_list_adaptive_mt_files_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, adaptive_mt.AdaptiveMtFile) for i in results) @@ -12582,6 +12605,8 @@ async def test_list_adaptive_mt_files_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13037,6 +13062,9 @@ def test_list_adaptive_mt_sentences_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, adaptive_mt.AdaptiveMtSentence) for i in results) @@ -13129,6 +13157,8 @@ async def test_list_adaptive_mt_sentences_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14285,6 +14315,9 @@ def test_list_examples_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, automl_translation.Example) for i in results) @@ -14373,6 +14406,8 @@ async def test_list_examples_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15141,6 +15176,9 @@ def test_list_models_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, automl_translation.Model) for i in results) @@ -15229,6 +15267,8 @@ async def test_list_models_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17876,6 +17916,9 @@ def test_list_glossaries_rest_pager(transport: str = "rest"): pager = client.list_glossaries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, translation_service.Glossary) for i in results) @@ -18684,6 +18727,9 @@ def test_list_glossary_entries_rest_pager(transport: str = "rest"): pager = client.list_glossary_entries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common.GlossaryEntry) for i in results) @@ -19862,6 +19908,9 @@ def test_list_datasets_rest_pager(transport: str = "rest"): pager = client.list_datasets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, automl_translation.Dataset) for i in results) @@ -20860,6 +20909,9 @@ def test_list_adaptive_mt_datasets_rest_pager(transport: str = "rest"): pager = client.list_adaptive_mt_datasets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, adaptive_mt.AdaptiveMtDataset) for i in results) @@ -21878,6 +21930,9 @@ def test_list_adaptive_mt_files_rest_pager(transport: str = "rest"): pager = client.list_adaptive_mt_files(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, adaptive_mt.AdaptiveMtFile) for i in results) @@ -22143,6 +22198,9 @@ def test_list_adaptive_mt_sentences_rest_pager(transport: str = "rest"): pager = client.list_adaptive_mt_sentences(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, adaptive_mt.AdaptiveMtSentence) for i in results) @@ -22801,6 +22859,9 @@ def test_list_examples_rest_pager(transport: str = "rest"): pager = client.list_examples(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, automl_translation.Example) for i in results) @@ -23245,6 +23306,9 @@ def test_list_models_rest_pager(transport: str = "rest"): pager = client.list_models(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, automl_translation.Model) for i in results) diff --git a/packages/google-cloud-translate/tests/unit/gapic/translate_v3beta1/test_translation_service.py b/packages/google-cloud-translate/tests/unit/gapic/translate_v3beta1/test_translation_service.py index a4b35b138495..9f311695f1df 100644 --- a/packages/google-cloud-translate/tests/unit/gapic/translate_v3beta1/test_translation_service.py +++ b/packages/google-cloud-translate/tests/unit/gapic/translate_v3beta1/test_translation_service.py @@ -4033,6 +4033,9 @@ def test_list_glossaries_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, translation_service.Glossary) for i in results) @@ -4121,6 +4124,8 @@ async def test_list_glossaries_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6553,6 +6558,9 @@ def test_list_glossaries_rest_pager(transport: str = "rest"): pager = client.list_glossaries(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, translation_service.Glossary) for i in results) diff --git a/packages/google-cloud-vectorsearch/noxfile.py b/packages/google-cloud-vectorsearch/noxfile.py index a0a96a3b681b..875310c23573 100644 --- a/packages/google-cloud-vectorsearch/noxfile.py +++ b/packages/google-cloud-vectorsearch/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-vectorsearch/testing/constraints-3.15.txt b/packages/google-cloud-vectorsearch/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-vectorsearch/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1/test_data_object_search_service.py b/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1/test_data_object_search_service.py index 72f858f7351d..d15308efd7e0 100644 --- a/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1/test_data_object_search_service.py +++ b/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1/test_data_object_search_service.py @@ -1706,6 +1706,9 @@ def test_search_data_objects_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1800,6 +1803,8 @@ async def test_search_data_objects_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2166,6 +2171,9 @@ def test_query_data_objects_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_object.DataObject) for i in results) @@ -2258,6 +2266,8 @@ async def test_query_data_objects_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3007,6 +3017,9 @@ def test_search_data_objects_rest_pager(transport: str = "rest"): pager = client.search_data_objects(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3202,6 +3215,9 @@ def test_query_data_objects_rest_pager(transport: str = "rest"): pager = client.query_data_objects(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_object.DataObject) for i in results) diff --git a/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1/test_vector_search_service.py b/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1/test_vector_search_service.py index e7ce85e7ed9c..b79dad4a3503 100644 --- a/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1/test_vector_search_service.py +++ b/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1/test_vector_search_service.py @@ -1783,6 +1783,9 @@ def test_list_collections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vectorsearch_service.Collection) for i in results) @@ -1871,6 +1874,8 @@ async def test_list_collections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3695,6 +3700,9 @@ def test_list_indexes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vectorsearch_service.Index) for i in results) @@ -3783,6 +3791,8 @@ async def test_list_indexes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6015,6 +6025,9 @@ def test_list_collections_rest_pager(transport: str = "rest"): pager = client.list_collections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vectorsearch_service.Collection) for i in results) @@ -7069,6 +7082,9 @@ def test_list_indexes_rest_pager(transport: str = "rest"): pager = client.list_indexes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vectorsearch_service.Index) for i in results) diff --git a/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1beta/test_data_object_search_service.py b/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1beta/test_data_object_search_service.py index 821cd7ef915a..78c24def9b44 100644 --- a/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1beta/test_data_object_search_service.py +++ b/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1beta/test_data_object_search_service.py @@ -1706,6 +1706,9 @@ def test_search_data_objects_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1800,6 +1803,8 @@ async def test_search_data_objects_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2166,6 +2171,9 @@ def test_query_data_objects_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_object.DataObject) for i in results) @@ -2258,6 +2266,8 @@ async def test_query_data_objects_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3007,6 +3017,9 @@ def test_search_data_objects_rest_pager(transport: str = "rest"): pager = client.search_data_objects(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3202,6 +3215,9 @@ def test_query_data_objects_rest_pager(transport: str = "rest"): pager = client.query_data_objects(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_object.DataObject) for i in results) diff --git a/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1beta/test_vector_search_service.py b/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1beta/test_vector_search_service.py index cebcab63db09..154bcdf3a062 100644 --- a/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1beta/test_vector_search_service.py +++ b/packages/google-cloud-vectorsearch/tests/unit/gapic/vectorsearch_v1beta/test_vector_search_service.py @@ -1783,6 +1783,9 @@ def test_list_collections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vectorsearch_service.Collection) for i in results) @@ -1871,6 +1874,8 @@ async def test_list_collections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3695,6 +3700,9 @@ def test_list_indexes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vectorsearch_service.Index) for i in results) @@ -3783,6 +3791,8 @@ async def test_list_indexes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6015,6 +6025,9 @@ def test_list_collections_rest_pager(transport: str = "rest"): pager = client.list_collections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vectorsearch_service.Collection) for i in results) @@ -7069,6 +7082,9 @@ def test_list_indexes_rest_pager(transport: str = "rest"): pager = client.list_indexes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vectorsearch_service.Index) for i in results) diff --git a/packages/google-cloud-video-live-stream/noxfile.py b/packages/google-cloud-video-live-stream/noxfile.py index f655209973ee..8d976cbca698 100644 --- a/packages/google-cloud-video-live-stream/noxfile.py +++ b/packages/google-cloud-video-live-stream/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-video-live-stream/testing/constraints-3.15.txt b/packages/google-cloud-video-live-stream/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-video-live-stream/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-video-live-stream/tests/unit/gapic/live_stream_v1/test_livestream_service.py b/packages/google-cloud-video-live-stream/tests/unit/gapic/live_stream_v1/test_livestream_service.py index 5ed86a02d674..230834ced80f 100644 --- a/packages/google-cloud-video-live-stream/tests/unit/gapic/live_stream_v1/test_livestream_service.py +++ b/packages/google-cloud-video-live-stream/tests/unit/gapic/live_stream_v1/test_livestream_service.py @@ -2109,6 +2109,9 @@ def test_list_channels_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Channel) for i in results) @@ -2197,6 +2200,8 @@ async def test_list_channels_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5351,6 +5356,9 @@ def test_list_inputs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Input) for i in results) @@ -5439,6 +5447,8 @@ async def test_list_inputs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7553,6 +7563,9 @@ def test_list_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Event) for i in results) @@ -7641,6 +7654,8 @@ async def test_list_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8715,6 +8730,9 @@ def test_list_clips_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Clip) for i in results) @@ -8803,6 +8821,8 @@ async def test_list_clips_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10635,6 +10655,9 @@ def test_list_dvr_sessions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.DvrSession) for i in results) @@ -10727,6 +10750,8 @@ async def test_list_dvr_sessions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13199,6 +13224,9 @@ def test_list_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Asset) for i in results) @@ -13287,6 +13315,8 @@ async def test_list_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14455,6 +14485,9 @@ def test_list_channels_rest_pager(transport: str = "rest"): pager = client.list_channels(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Channel) for i in results) @@ -16195,6 +16228,9 @@ def test_list_inputs_rest_pager(transport: str = "rest"): pager = client.list_inputs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Input) for i in results) @@ -17390,6 +17426,9 @@ def test_list_events_rest_pager(transport: str = "rest"): pager = client.list_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Event) for i in results) @@ -18003,6 +18042,9 @@ def test_list_clips_rest_pager(transport: str = "rest"): pager = client.list_clips(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Clip) for i in results) @@ -19062,6 +19104,9 @@ def test_list_dvr_sessions_rest_pager(transport: str = "rest"): pager = client.list_dvr_sessions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.DvrSession) for i in results) @@ -20449,6 +20494,9 @@ def test_list_assets_rest_pager(transport: str = "rest"): pager = client.list_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Asset) for i in results) diff --git a/packages/google-cloud-video-stitcher/noxfile.py b/packages/google-cloud-video-stitcher/noxfile.py index 0aee9c67760b..22720c5a4b81 100644 --- a/packages/google-cloud-video-stitcher/noxfile.py +++ b/packages/google-cloud-video-stitcher/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-video-stitcher/testing/constraints-3.15.txt b/packages/google-cloud-video-stitcher/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-video-stitcher/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-video-stitcher/tests/unit/gapic/stitcher_v1/test_video_stitcher_service.py b/packages/google-cloud-video-stitcher/tests/unit/gapic/stitcher_v1/test_video_stitcher_service.py index 78a27dc08ada..ba420c295d32 100644 --- a/packages/google-cloud-video-stitcher/tests/unit/gapic/stitcher_v1/test_video_stitcher_service.py +++ b/packages/google-cloud-video-stitcher/tests/unit/gapic/stitcher_v1/test_video_stitcher_service.py @@ -2148,6 +2148,9 @@ def test_list_cdn_keys_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cdn_keys.CdnKey) for i in results) @@ -2236,6 +2239,8 @@ async def test_list_cdn_keys_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4401,6 +4406,9 @@ def test_list_vod_stitch_details_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, stitch_details.VodStitchDetail) for i in results) @@ -4493,6 +4501,8 @@ async def test_list_vod_stitch_details_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5291,6 +5301,9 @@ def test_list_vod_ad_tag_details_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, ad_tag_details.VodAdTagDetail) for i in results) @@ -5383,6 +5396,8 @@ async def test_list_vod_ad_tag_details_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6183,6 +6198,9 @@ def test_list_live_ad_tag_details_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, ad_tag_details.LiveAdTagDetail) for i in results) @@ -6275,6 +6293,8 @@ async def test_list_live_ad_tag_details_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7410,6 +7430,9 @@ def test_list_slates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, slates.Slate) for i in results) @@ -7498,6 +7521,8 @@ async def test_list_slates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10008,6 +10033,9 @@ def test_list_live_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, live_configs.LiveConfig) for i in results) @@ -10100,6 +10128,8 @@ async def test_list_live_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11958,6 +11988,9 @@ def test_list_vod_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vod_configs.VodConfig) for i in results) @@ -12046,6 +12079,8 @@ async def test_list_vod_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13588,6 +13623,9 @@ def test_list_cdn_keys_rest_pager(transport: str = "rest"): pager = client.list_cdn_keys(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, cdn_keys.CdnKey) for i in results) @@ -14775,6 +14813,9 @@ def test_list_vod_stitch_details_rest_pager(transport: str = "rest"): pager = client.list_vod_stitch_details(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, stitch_details.VodStitchDetail) for i in results) @@ -15230,6 +15271,9 @@ def test_list_vod_ad_tag_details_rest_pager(transport: str = "rest"): pager = client.list_vod_ad_tag_details(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, ad_tag_details.VodAdTagDetail) for i in results) @@ -15685,6 +15729,9 @@ def test_list_live_ad_tag_details_rest_pager(transport: str = "rest"): pager = client.list_live_ad_tag_details(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, ad_tag_details.LiveAdTagDetail) for i in results) @@ -16344,6 +16391,9 @@ def test_list_slates_rest_pager(transport: str = "rest"): pager = client.list_slates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, slates.Slate) for i in results) @@ -17743,6 +17793,9 @@ def test_list_live_configs_rest_pager(transport: str = "rest"): pager = client.list_live_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, live_configs.LiveConfig) for i in results) @@ -18779,6 +18832,9 @@ def test_list_vod_configs_rest_pager(transport: str = "rest"): pager = client.list_vod_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vod_configs.VodConfig) for i in results) diff --git a/packages/google-cloud-video-transcoder/noxfile.py b/packages/google-cloud-video-transcoder/noxfile.py index 6947719b3abd..8f1a9ec92216 100644 --- a/packages/google-cloud-video-transcoder/noxfile.py +++ b/packages/google-cloud-video-transcoder/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-video-transcoder/testing/constraints-3.15.txt b/packages/google-cloud-video-transcoder/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-video-transcoder/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-video-transcoder/tests/unit/gapic/transcoder_v1/test_transcoder_service.py b/packages/google-cloud-video-transcoder/tests/unit/gapic/transcoder_v1/test_transcoder_service.py index 399665c87aad..ad413a67ee79 100644 --- a/packages/google-cloud-video-transcoder/tests/unit/gapic/transcoder_v1/test_transcoder_service.py +++ b/packages/google-cloud-video-transcoder/tests/unit/gapic/transcoder_v1/test_transcoder_service.py @@ -2107,6 +2107,9 @@ def test_list_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Job) for i in results) @@ -2195,6 +2198,8 @@ async def test_list_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3676,6 +3681,9 @@ def test_list_job_templates_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.JobTemplate) for i in results) @@ -3768,6 +3776,8 @@ async def test_list_job_templates_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4911,6 +4921,9 @@ def test_list_jobs_rest_pager(transport: str = "rest"): pager = client.list_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.Job) for i in results) @@ -5731,6 +5744,9 @@ def test_list_job_templates_rest_pager(transport: str = "rest"): pager = client.list_job_templates(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, resources.JobTemplate) for i in results) diff --git a/packages/google-cloud-videointelligence/noxfile.py b/packages/google-cloud-videointelligence/noxfile.py index ea240e5ae562..591d9390cb4b 100644 --- a/packages/google-cloud-videointelligence/noxfile.py +++ b/packages/google-cloud-videointelligence/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-videointelligence/testing/constraints-3.15.txt b/packages/google-cloud-videointelligence/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-videointelligence/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-vision/noxfile.py b/packages/google-cloud-vision/noxfile.py index a8c68f537b0c..a621a9a01475 100644 --- a/packages/google-cloud-vision/noxfile.py +++ b/packages/google-cloud-vision/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", # TODO(https://github.com/googleapis/google-cloud-python/issues/16083) @@ -567,7 +576,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-vision/testing/constraints-3.15.txt b/packages/google-cloud-vision/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-vision/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-vision/tests/unit/gapic/vision_v1/test_product_search.py b/packages/google-cloud-vision/tests/unit/gapic/vision_v1/test_product_search.py index c788af937585..4c9d9b37873e 100644 --- a/packages/google-cloud-vision/tests/unit/gapic/vision_v1/test_product_search.py +++ b/packages/google-cloud-vision/tests/unit/gapic/vision_v1/test_product_search.py @@ -2093,6 +2093,9 @@ def test_list_product_sets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.ProductSet) for i in results) @@ -2185,6 +2188,8 @@ async def test_list_product_sets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3983,6 +3988,9 @@ def test_list_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.Product) for i in results) @@ -4071,6 +4079,8 @@ async def test_list_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6220,6 +6230,9 @@ def test_list_reference_images_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6314,6 +6327,8 @@ async def test_list_reference_images_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7807,6 +7822,9 @@ def test_list_products_in_product_set_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.Product) for i in results) @@ -7899,6 +7917,8 @@ async def test_list_products_in_product_set_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9112,6 +9132,9 @@ def test_list_product_sets_rest_pager(transport: str = "rest"): pager = client.list_product_sets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.ProductSet) for i in results) @@ -10104,6 +10127,9 @@ def test_list_products_rest_pager(transport: str = "rest"): pager = client.list_products(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.Product) for i in results) @@ -11283,6 +11309,9 @@ def test_list_reference_images_rest_pager(transport: str = "rest"): pager = client.list_reference_images(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -12131,6 +12160,9 @@ def test_list_products_in_product_set_rest_pager(transport: str = "rest"): pager = client.list_products_in_product_set(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.Product) for i in results) diff --git a/packages/google-cloud-vision/tests/unit/gapic/vision_v1p3beta1/test_product_search.py b/packages/google-cloud-vision/tests/unit/gapic/vision_v1p3beta1/test_product_search.py index 040f0d786745..8d3a007fb620 100644 --- a/packages/google-cloud-vision/tests/unit/gapic/vision_v1p3beta1/test_product_search.py +++ b/packages/google-cloud-vision/tests/unit/gapic/vision_v1p3beta1/test_product_search.py @@ -2092,6 +2092,9 @@ def test_list_product_sets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.ProductSet) for i in results) @@ -2184,6 +2187,8 @@ async def test_list_product_sets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3982,6 +3987,9 @@ def test_list_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.Product) for i in results) @@ -4070,6 +4078,8 @@ async def test_list_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6219,6 +6229,9 @@ def test_list_reference_images_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6313,6 +6326,8 @@ async def test_list_reference_images_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7806,6 +7821,9 @@ def test_list_products_in_product_set_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.Product) for i in results) @@ -7898,6 +7916,8 @@ async def test_list_products_in_product_set_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8783,6 +8803,9 @@ def test_list_product_sets_rest_pager(transport: str = "rest"): pager = client.list_product_sets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.ProductSet) for i in results) @@ -9777,6 +9800,9 @@ def test_list_products_rest_pager(transport: str = "rest"): pager = client.list_products(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.Product) for i in results) @@ -10958,6 +10984,9 @@ def test_list_reference_images_rest_pager(transport: str = "rest"): pager = client.list_reference_images(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -11806,6 +11835,9 @@ def test_list_products_in_product_set_rest_pager(transport: str = "rest"): pager = client.list_products_in_product_set(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.Product) for i in results) diff --git a/packages/google-cloud-vision/tests/unit/gapic/vision_v1p4beta1/test_product_search.py b/packages/google-cloud-vision/tests/unit/gapic/vision_v1p4beta1/test_product_search.py index ce876750be5a..a249c7c58418 100644 --- a/packages/google-cloud-vision/tests/unit/gapic/vision_v1p4beta1/test_product_search.py +++ b/packages/google-cloud-vision/tests/unit/gapic/vision_v1p4beta1/test_product_search.py @@ -2093,6 +2093,9 @@ def test_list_product_sets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.ProductSet) for i in results) @@ -2185,6 +2188,8 @@ async def test_list_product_sets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3983,6 +3988,9 @@ def test_list_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.Product) for i in results) @@ -4071,6 +4079,8 @@ async def test_list_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6220,6 +6230,9 @@ def test_list_reference_images_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6314,6 +6327,8 @@ async def test_list_reference_images_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7807,6 +7822,9 @@ def test_list_products_in_product_set_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.Product) for i in results) @@ -7899,6 +7917,8 @@ async def test_list_products_in_product_set_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9112,6 +9132,9 @@ def test_list_product_sets_rest_pager(transport: str = "rest"): pager = client.list_product_sets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.ProductSet) for i in results) @@ -10106,6 +10129,9 @@ def test_list_products_rest_pager(transport: str = "rest"): pager = client.list_products(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.Product) for i in results) @@ -11287,6 +11313,9 @@ def test_list_reference_images_rest_pager(transport: str = "rest"): pager = client.list_reference_images(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -12135,6 +12164,9 @@ def test_list_products_in_product_set_rest_pager(transport: str = "rest"): pager = client.list_products_in_product_set(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, product_search_service.Product) for i in results) diff --git a/packages/google-cloud-visionai/noxfile.py b/packages/google-cloud-visionai/noxfile.py index 14c9964d9a0e..9cb21fb92b0c 100644 --- a/packages/google-cloud-visionai/noxfile.py +++ b/packages/google-cloud-visionai/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-visionai/testing/constraints-3.15.txt b/packages/google-cloud-visionai/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-visionai/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_app_platform.py b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_app_platform.py index 48da4e82f521..5376e21fb1c2 100644 --- a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_app_platform.py +++ b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_app_platform.py @@ -1702,6 +1702,9 @@ def test_list_applications_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Application) for i in results) @@ -1794,6 +1797,8 @@ async def test_list_applications_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5387,6 +5392,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Instance) for i in results) @@ -5475,6 +5483,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7334,6 +7344,9 @@ def test_list_drafts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Draft) for i in results) @@ -7422,6 +7435,8 @@ async def test_list_drafts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9204,6 +9219,9 @@ def test_list_processors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Processor) for i in results) @@ -9292,6 +9310,8 @@ async def test_list_processors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11333,6 +11353,9 @@ def test_list_applications_rest_pager(transport: str = "rest"): pager = client.list_applications(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Application) for i in results) @@ -13316,6 +13339,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Instance) for i in results) @@ -14339,6 +14365,9 @@ def test_list_drafts_rest_pager(transport: str = "rest"): pager = client.list_drafts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Draft) for i in results) @@ -15363,6 +15392,9 @@ def test_list_processors_rest_pager(transport: str = "rest"): pager = client.list_processors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Processor) for i in results) diff --git a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_live_video_analytics.py b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_live_video_analytics.py index 5b4df2010cf8..0f3a32fdfcbd 100644 --- a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_live_video_analytics.py +++ b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_live_video_analytics.py @@ -1781,6 +1781,9 @@ def test_list_public_operators_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lva_resources.Operator) for i in results) @@ -1873,6 +1876,8 @@ async def test_list_public_operators_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2660,6 +2665,9 @@ def test_list_operators_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lva_resources.Operator) for i in results) @@ -2748,6 +2756,8 @@ async def test_list_operators_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4532,6 +4542,9 @@ def test_list_analyses_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lva_resources.Analysis) for i in results) @@ -4620,6 +4633,8 @@ async def test_list_analyses_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6404,6 +6419,9 @@ def test_list_processes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lva_resources.Process) for i in results) @@ -6492,6 +6510,8 @@ async def test_list_processes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8525,6 +8545,9 @@ def test_list_public_operators_rest_pager(transport: str = "rest"): pager = client.list_public_operators(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lva_resources.Operator) for i in results) @@ -8976,6 +8999,9 @@ def test_list_operators_rest_pager(transport: str = "rest"): pager = client.list_operators(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lva_resources.Operator) for i in results) @@ -10007,6 +10033,9 @@ def test_list_analyses_rest_pager(transport: str = "rest"): pager = client.list_analyses(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lva_resources.Analysis) for i in results) @@ -11045,6 +11074,9 @@ def test_list_processes_rest_pager(transport: str = "rest"): pager = client.list_processes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lva_resources.Process) for i in results) diff --git a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_streams_service.py b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_streams_service.py index 54326a0414ac..4602b7edccbe 100644 --- a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_streams_service.py +++ b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_streams_service.py @@ -1721,6 +1721,9 @@ def test_list_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common.Cluster) for i in results) @@ -1809,6 +1812,8 @@ async def test_list_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3597,6 +3602,9 @@ def test_list_streams_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, streams_resources.Stream) for i in results) @@ -3685,6 +3693,8 @@ async def test_list_streams_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6184,6 +6194,9 @@ def test_list_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, streams_resources.Event) for i in results) @@ -6272,6 +6285,8 @@ async def test_list_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8054,6 +8069,9 @@ def test_list_series_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, streams_resources.Series) for i in results) @@ -8142,6 +8160,8 @@ async def test_list_series_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10165,6 +10185,9 @@ def test_list_clusters_rest_pager(transport: str = "rest"): pager = client.list_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common.Cluster) for i in results) @@ -11196,6 +11219,9 @@ def test_list_streams_rest_pager(transport: str = "rest"): pager = client.list_streams(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, streams_resources.Stream) for i in results) @@ -12622,6 +12648,9 @@ def test_list_events_rest_pager(transport: str = "rest"): pager = client.list_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, streams_resources.Event) for i in results) @@ -13662,6 +13691,9 @@ def test_list_series_rest_pager(transport: str = "rest"): pager = client.list_series(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, streams_resources.Series) for i in results) diff --git a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_warehouse.py b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_warehouse.py index 652b4af24cd7..9cba9d42d322 100644 --- a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_warehouse.py +++ b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1/test_warehouse.py @@ -2658,6 +2658,9 @@ def test_list_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Asset) for i in results) @@ -2746,6 +2749,8 @@ async def test_list_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4785,6 +4790,9 @@ def test_view_indexed_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.IndexedAsset) for i in results) @@ -4877,6 +4885,8 @@ async def test_view_indexed_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6330,6 +6340,9 @@ def test_list_indexes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Index) for i in results) @@ -6418,6 +6431,8 @@ async def test_list_indexes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8198,6 +8213,9 @@ def test_list_corpora_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Corpus) for i in results) @@ -8286,6 +8304,8 @@ async def test_list_corpora_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10656,6 +10676,9 @@ def test_list_data_schemas_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.DataSchema) for i in results) @@ -10748,6 +10771,8 @@ async def test_list_data_schemas_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11868,6 +11893,9 @@ def test_list_annotations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Annotation) for i in results) @@ -11956,6 +11984,8 @@ async def test_list_annotations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -15341,6 +15371,9 @@ def test_list_search_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.SearchConfig) for i in results) @@ -15433,6 +15466,8 @@ async def test_list_search_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17303,6 +17338,9 @@ def test_list_search_hypernyms_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.SearchHypernym) for i in results) @@ -17395,6 +17433,8 @@ async def test_list_search_hypernyms_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17745,6 +17785,9 @@ def test_search_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.SearchResultItem) for i in results) @@ -17833,6 +17876,8 @@ async def test_search_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -18200,6 +18245,9 @@ def test_search_index_endpoint_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.SearchResultItem) for i in results) @@ -18292,6 +18340,8 @@ async def test_search_index_endpoint_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -19479,6 +19529,9 @@ def test_list_index_endpoints_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.IndexEndpoint) for i in results) @@ -19571,6 +19624,8 @@ async def test_list_index_endpoints_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -22595,6 +22650,9 @@ def test_list_collections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Collection) for i in results) @@ -22683,6 +22741,8 @@ async def test_list_collections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -23801,6 +23861,9 @@ def test_view_collection_items_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.CollectionItem) for i in results) @@ -23893,6 +23956,8 @@ async def test_view_collection_items_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -24748,6 +24813,9 @@ def test_list_assets_rest_pager(transport: str = "rest"): pager = client.list_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Asset) for i in results) @@ -25803,6 +25871,9 @@ def test_view_indexed_assets_rest_pager(transport: str = "rest"): pager = client.view_indexed_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.IndexedAsset) for i in results) @@ -26616,6 +26687,9 @@ def test_list_indexes_rest_pager(transport: str = "rest"): pager = client.list_indexes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Index) for i in results) @@ -27584,6 +27658,9 @@ def test_list_corpora_rest_pager(transport: str = "rest"): pager = client.list_corpora(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Corpus) for i in results) @@ -28876,6 +28953,9 @@ def test_list_data_schemas_rest_pager(transport: str = "rest"): pager = client.list_data_schemas(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.DataSchema) for i in results) @@ -29414,6 +29494,9 @@ def test_list_annotations_rest_pager(transport: str = "rest"): pager = client.list_annotations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Annotation) for i in results) @@ -31180,6 +31263,9 @@ def test_list_search_configs_rest_pager(transport: str = "rest"): pager = client.list_search_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.SearchConfig) for i in results) @@ -32196,6 +32282,9 @@ def test_list_search_hypernyms_rest_pager(transport: str = "rest"): pager = client.list_search_hypernyms(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.SearchHypernym) for i in results) @@ -32378,6 +32467,9 @@ def test_search_assets_rest_pager(transport: str = "rest"): pager = client.search_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.SearchResultItem) for i in results) @@ -32569,6 +32661,9 @@ def test_search_index_endpoint_rest_pager(transport: str = "rest"): pager = client.search_index_endpoint(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.SearchResultItem) for i in results) @@ -33212,6 +33307,9 @@ def test_list_index_endpoints_rest_pager(transport: str = "rest"): pager = client.list_index_endpoints(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.IndexEndpoint) for i in results) @@ -34841,6 +34939,9 @@ def test_list_collections_rest_pager(transport: str = "rest"): pager = client.list_collections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Collection) for i in results) @@ -35471,6 +35572,9 @@ def test_view_collection_items_rest_pager(transport: str = "rest"): pager = client.view_collection_items(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.CollectionItem) for i in results) diff --git a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_app_platform.py b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_app_platform.py index 4210715b0c43..c58238a6dd39 100644 --- a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_app_platform.py +++ b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_app_platform.py @@ -1701,6 +1701,9 @@ def test_list_applications_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Application) for i in results) @@ -1793,6 +1796,8 @@ async def test_list_applications_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5382,6 +5387,9 @@ def test_list_instances_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Instance) for i in results) @@ -5470,6 +5478,8 @@ async def test_list_instances_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7325,6 +7335,9 @@ def test_list_drafts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Draft) for i in results) @@ -7413,6 +7426,8 @@ async def test_list_drafts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9195,6 +9210,9 @@ def test_list_processors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Processor) for i in results) @@ -9283,6 +9301,8 @@ async def test_list_processors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11312,6 +11332,9 @@ def test_list_applications_rest_pager(transport: str = "rest"): pager = client.list_applications(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Application) for i in results) @@ -13295,6 +13318,9 @@ def test_list_instances_rest_pager(transport: str = "rest"): pager = client.list_instances(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Instance) for i in results) @@ -14318,6 +14344,9 @@ def test_list_drafts_rest_pager(transport: str = "rest"): pager = client.list_drafts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Draft) for i in results) @@ -15343,6 +15372,9 @@ def test_list_processors_rest_pager(transport: str = "rest"): pager = client.list_processors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, platform.Processor) for i in results) diff --git a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_live_video_analytics.py b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_live_video_analytics.py index 83174cdfcfba..a33f7bffc860 100644 --- a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_live_video_analytics.py +++ b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_live_video_analytics.py @@ -1762,6 +1762,9 @@ def test_list_analyses_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lva_resources.Analysis) for i in results) @@ -1850,6 +1853,8 @@ async def test_list_analyses_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3500,6 +3505,9 @@ def test_list_analyses_rest_pager(transport: str = "rest"): pager = client.list_analyses(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lva_resources.Analysis) for i in results) diff --git a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_streams_service.py b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_streams_service.py index 7fa638b2906f..6a969c017fb2 100644 --- a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_streams_service.py +++ b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_streams_service.py @@ -1725,6 +1725,9 @@ def test_list_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common.Cluster) for i in results) @@ -1813,6 +1816,8 @@ async def test_list_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3601,6 +3606,9 @@ def test_list_streams_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, streams_resources.Stream) for i in results) @@ -3689,6 +3697,8 @@ async def test_list_streams_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5824,6 +5834,9 @@ def test_list_events_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, streams_resources.Event) for i in results) @@ -5912,6 +5925,8 @@ async def test_list_events_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7694,6 +7709,9 @@ def test_list_series_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, streams_resources.Series) for i in results) @@ -7782,6 +7800,8 @@ async def test_list_series_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9806,6 +9826,9 @@ def test_list_clusters_rest_pager(transport: str = "rest"): pager = client.list_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, common.Cluster) for i in results) @@ -10840,6 +10863,9 @@ def test_list_streams_rest_pager(transport: str = "rest"): pager = client.list_streams(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, streams_resources.Stream) for i in results) @@ -12068,6 +12094,9 @@ def test_list_events_rest_pager(transport: str = "rest"): pager = client.list_events(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, streams_resources.Event) for i in results) @@ -13108,6 +13137,9 @@ def test_list_series_rest_pager(transport: str = "rest"): pager = client.list_series(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, streams_resources.Series) for i in results) diff --git a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_warehouse.py b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_warehouse.py index 8a8ce0077cf7..71ec41085adc 100644 --- a/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_warehouse.py +++ b/packages/google-cloud-visionai/tests/unit/gapic/visionai_v1alpha1/test_warehouse.py @@ -2656,6 +2656,9 @@ def test_list_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Asset) for i in results) @@ -2744,6 +2747,8 @@ async def test_list_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4498,6 +4503,9 @@ def test_list_corpora_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Corpus) for i in results) @@ -4586,6 +4594,8 @@ async def test_list_corpora_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6710,6 +6720,9 @@ def test_list_data_schemas_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.DataSchema) for i in results) @@ -6802,6 +6815,8 @@ async def test_list_data_schemas_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7922,6 +7937,9 @@ def test_list_annotations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Annotation) for i in results) @@ -8010,6 +8028,8 @@ async def test_list_annotations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11147,6 +11167,9 @@ def test_list_search_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.SearchConfig) for i in results) @@ -11239,6 +11262,8 @@ async def test_list_search_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -11587,6 +11612,9 @@ def test_search_assets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.SearchResultItem) for i in results) @@ -11675,6 +11703,8 @@ async def test_search_assets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12526,6 +12556,9 @@ def test_list_assets_rest_pager(transport: str = "rest"): pager = client.list_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Asset) for i in results) @@ -13495,6 +13528,9 @@ def test_list_corpora_rest_pager(transport: str = "rest"): pager = client.list_corpora(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Corpus) for i in results) @@ -14666,6 +14702,9 @@ def test_list_data_schemas_rest_pager(transport: str = "rest"): pager = client.list_data_schemas(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.DataSchema) for i in results) @@ -15204,6 +15243,9 @@ def test_list_annotations_rest_pager(transport: str = "rest"): pager = client.list_annotations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.Annotation) for i in results) @@ -16858,6 +16900,9 @@ def test_list_search_configs_rest_pager(transport: str = "rest"): pager = client.list_search_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.SearchConfig) for i in results) @@ -17040,6 +17085,9 @@ def test_search_assets_rest_pager(transport: str = "rest"): pager = client.search_assets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, warehouse.SearchResultItem) for i in results) diff --git a/packages/google-cloud-vm-migration/noxfile.py b/packages/google-cloud-vm-migration/noxfile.py index d8f091d84d1d..f99d5fd8346b 100644 --- a/packages/google-cloud-vm-migration/noxfile.py +++ b/packages/google-cloud-vm-migration/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-vm-migration/testing/constraints-3.15.txt b/packages/google-cloud-vm-migration/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-vm-migration/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-vm-migration/tests/unit/gapic/vmmigration_v1/test_vm_migration.py b/packages/google-cloud-vm-migration/tests/unit/gapic/vmmigration_v1/test_vm_migration.py index a932d659b9c5..7ec081fb91ed 100644 --- a/packages/google-cloud-vm-migration/tests/unit/gapic/vmmigration_v1/test_vm_migration.py +++ b/packages/google-cloud-vm-migration/tests/unit/gapic/vmmigration_v1/test_vm_migration.py @@ -1681,6 +1681,9 @@ def test_list_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.Source) for i in results) @@ -1769,6 +1772,8 @@ async def test_list_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3914,6 +3919,9 @@ def test_fetch_storage_inventory_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.SourceStorageResource) for i in results) @@ -4006,6 +4014,8 @@ async def test_fetch_storage_inventory_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4469,6 +4479,9 @@ def test_list_utilization_reports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.UtilizationReport) for i in results) @@ -4561,6 +4574,8 @@ async def test_list_utilization_reports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6109,6 +6124,9 @@ def test_list_datacenter_connectors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.DatacenterConnector) for i in results) @@ -6201,6 +6219,8 @@ async def test_list_datacenter_connectors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -8428,6 +8448,9 @@ def test_list_migrating_vms_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.MigratingVm) for i in results) @@ -8520,6 +8543,8 @@ async def test_list_migrating_vms_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12154,6 +12179,9 @@ def test_list_clone_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.CloneJob) for i in results) @@ -12242,6 +12270,8 @@ async def test_list_clone_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -13764,6 +13794,9 @@ def test_list_cutover_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.CutoverJob) for i in results) @@ -13856,6 +13889,8 @@ async def test_list_cutover_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14630,6 +14665,9 @@ def test_list_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.Group) for i in results) @@ -14718,6 +14756,8 @@ async def test_list_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17231,6 +17271,9 @@ def test_list_target_projects_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.TargetProject) for i in results) @@ -17323,6 +17366,8 @@ async def test_list_target_projects_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -19217,6 +19262,9 @@ def test_list_replication_cycles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.ReplicationCycle) for i in results) @@ -19309,6 +19357,8 @@ async def test_list_replication_cycles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20124,6 +20174,9 @@ def test_list_image_imports_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.ImageImport) for i in results) @@ -20216,6 +20269,8 @@ async def test_list_image_imports_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -21730,6 +21785,9 @@ def test_list_image_import_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.ImageImportJob) for i in results) @@ -21822,6 +21880,8 @@ async def test_list_image_import_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -23382,6 +23442,9 @@ def test_list_disk_migration_jobs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.DiskMigrationJob) for i in results) @@ -23474,6 +23537,8 @@ async def test_list_disk_migration_jobs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -25482,6 +25547,9 @@ def test_list_sources_rest_pager(transport: str = "rest"): pager = client.list_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.Source) for i in results) @@ -26708,6 +26776,9 @@ def test_fetch_storage_inventory_rest_pager(transport: str = "rest"): pager = client.fetch_storage_inventory(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.SourceStorageResource) for i in results) @@ -26997,6 +27068,9 @@ def test_list_utilization_reports_rest_pager(transport: str = "rest"): pager = client.list_utilization_reports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.UtilizationReport) for i in results) @@ -27883,6 +27957,9 @@ def test_list_datacenter_connectors_rest_pager(transport: str = "rest"): pager = client.list_datacenter_connectors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.DatacenterConnector) for i in results) @@ -29126,6 +29203,9 @@ def test_list_migrating_vms_rest_pager(transport: str = "rest"): pager = client.list_migrating_vms(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.MigratingVm) for i in results) @@ -31123,6 +31203,9 @@ def test_list_clone_jobs_rest_pager(transport: str = "rest"): pager = client.list_clone_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.CloneJob) for i in results) @@ -32001,6 +32084,9 @@ def test_list_cutover_jobs_rest_pager(transport: str = "rest"): pager = client.list_cutover_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.CutoverJob) for i in results) @@ -32454,6 +32540,9 @@ def test_list_groups_rest_pager(transport: str = "rest"): pager = client.list_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.Group) for i in results) @@ -33855,6 +33944,9 @@ def test_list_target_projects_rest_pager(transport: str = "rest"): pager = client.list_target_projects(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.TargetProject) for i in results) @@ -34932,6 +35024,9 @@ def test_list_replication_cycles_rest_pager(transport: str = "rest"): pager = client.list_replication_cycles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.ReplicationCycle) for i in results) @@ -35381,6 +35476,9 @@ def test_list_image_imports_rest_pager(transport: str = "rest"): pager = client.list_image_imports(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.ImageImport) for i in results) @@ -36241,6 +36339,9 @@ def test_list_image_import_jobs_rest_pager(transport: str = "rest"): pager = client.list_image_import_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.ImageImportJob) for i in results) @@ -37112,6 +37213,9 @@ def test_list_disk_migration_jobs_rest_pager(transport: str = "rest"): pager = client.list_disk_migration_jobs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmmigration.DiskMigrationJob) for i in results) diff --git a/packages/google-cloud-vmwareengine/noxfile.py b/packages/google-cloud-vmwareengine/noxfile.py index 7f6b1caa7cca..1d42b7a640b9 100644 --- a/packages/google-cloud-vmwareengine/noxfile.py +++ b/packages/google-cloud-vmwareengine/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-vmwareengine/testing/constraints-3.15.txt b/packages/google-cloud-vmwareengine/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-vmwareengine/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-vmwareengine/tests/unit/gapic/vmwareengine_v1/test_vmware_engine.py b/packages/google-cloud-vmwareengine/tests/unit/gapic/vmwareengine_v1/test_vmware_engine.py index 9f9ae4127315..76abd6a1b84c 100644 --- a/packages/google-cloud-vmwareengine/tests/unit/gapic/vmwareengine_v1/test_vmware_engine.py +++ b/packages/google-cloud-vmwareengine/tests/unit/gapic/vmwareengine_v1/test_vmware_engine.py @@ -1718,6 +1718,9 @@ def test_list_private_clouds_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.PrivateCloud) for i in results) @@ -1810,6 +1813,8 @@ async def test_list_private_clouds_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4037,6 +4042,9 @@ def test_list_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.Cluster) for i in results) @@ -4125,6 +4133,8 @@ async def test_list_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5907,6 +5917,9 @@ def test_list_nodes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.Node) for i in results) @@ -5995,6 +6008,8 @@ async def test_list_nodes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6800,6 +6815,9 @@ def test_list_external_addresses_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6894,6 +6912,8 @@ async def test_list_external_addresses_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7351,6 +7371,9 @@ def test_fetch_network_policy_external_addresses_pager(transport_name: str = "gr assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -7445,6 +7468,8 @@ async def test_fetch_network_policy_external_addresses_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9330,6 +9355,9 @@ def test_list_subnets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.Subnet) for i in results) @@ -9418,6 +9446,8 @@ async def test_list_subnets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10555,6 +10585,9 @@ def test_list_external_access_rules_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -10649,6 +10682,8 @@ async def test_list_external_access_rules_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -12587,6 +12622,9 @@ def test_list_logging_servers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.LoggingServer) for i in results) @@ -12679,6 +12717,8 @@ async def test_list_logging_servers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -14562,6 +14602,9 @@ def test_list_node_types_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.NodeType) for i in results) @@ -14650,6 +14693,8 @@ async def test_list_node_types_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -17985,6 +18030,9 @@ def test_list_network_peerings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -18079,6 +18127,8 @@ async def test_list_network_peerings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -19616,6 +19666,9 @@ def test_list_peering_routes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.PeeringRoute) for i in results) @@ -19708,6 +19761,8 @@ async def test_list_peering_routes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -20550,6 +20605,9 @@ def test_list_hcx_activation_keys_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -20644,6 +20702,8 @@ async def test_list_hcx_activation_keys_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -21832,6 +21892,9 @@ def test_list_network_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.NetworkPolicy) for i in results) @@ -21924,6 +21987,8 @@ async def test_list_network_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -23472,6 +23537,9 @@ def test_list_management_dns_zone_bindings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -23567,6 +23635,8 @@ async def test_list_management_dns_zone_bindings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -27313,6 +27383,9 @@ def test_list_vmware_engine_networks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -27407,6 +27480,8 @@ async def test_list_vmware_engine_networks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -28662,6 +28737,9 @@ def test_list_private_connections_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -28756,6 +28834,8 @@ async def test_list_private_connections_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -29931,6 +30011,9 @@ def test_list_private_connection_peering_routes_pager(transport_name: str = "grp assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.PeeringRoute) for i in results) @@ -30023,6 +30106,8 @@ async def test_list_private_connection_peering_routes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -31404,6 +31489,9 @@ def test_list_private_clouds_rest_pager(transport: str = "rest"): pager = client.list_private_clouds(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.PrivateCloud) for i in results) @@ -32658,6 +32746,9 @@ def test_list_clusters_rest_pager(transport: str = "rest"): pager = client.list_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.Cluster) for i in results) @@ -33694,6 +33785,9 @@ def test_list_nodes_rest_pager(transport: str = "rest"): pager = client.list_nodes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.Node) for i in results) @@ -34141,6 +34235,9 @@ def test_list_external_addresses_rest_pager(transport: str = "rest"): pager = client.list_external_addresses(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -34421,6 +34518,9 @@ def test_fetch_network_policy_external_addresses_rest_pager(transport: str = "re pager = client.fetch_network_policy_external_addresses(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -35480,6 +35580,9 @@ def test_list_subnets_rest_pager(transport: str = "rest"): pager = client.list_subnets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.Subnet) for i in results) @@ -36116,6 +36219,9 @@ def test_list_external_access_rules_rest_pager(transport: str = "rest"): pager = client.list_external_access_rules(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -37195,6 +37301,9 @@ def test_list_logging_servers_rest_pager(transport: str = "rest"): pager = client.list_logging_servers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.LoggingServer) for i in results) @@ -38249,6 +38358,9 @@ def test_list_node_types_rest_pager(transport: str = "rest"): pager = client.list_node_types(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.NodeType) for i in results) @@ -40006,6 +40118,9 @@ def test_list_network_peerings_rest_pager(transport: str = "rest"): pager = client.list_network_peerings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -40885,6 +41000,9 @@ def test_list_peering_routes_rest_pager(transport: str = "rest"): pager = client.list_peering_routes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.PeeringRoute) for i in results) @@ -41379,6 +41497,9 @@ def test_list_hcx_activation_keys_rest_pager(transport: str = "rest"): pager = client.list_hcx_activation_keys(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -42015,6 +42136,9 @@ def test_list_network_policies_rest_pager(transport: str = "rest"): pager = client.list_network_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.NetworkPolicy) for i in results) @@ -42904,6 +43028,9 @@ def test_list_management_dns_zone_bindings_rest_pager(transport: str = "rest"): pager = client.list_management_dns_zone_bindings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -45017,6 +45144,9 @@ def test_list_vmware_engine_networks_rest_pager(transport: str = "rest"): pager = client.list_vmware_engine_networks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -45697,6 +45827,9 @@ def test_list_private_connections_rest_pager(transport: str = "rest"): pager = client.list_private_connections(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -46371,6 +46504,9 @@ def test_list_private_connection_peering_routes_rest_pager(transport: str = "res pager = client.list_private_connection_peering_routes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vmwareengine_resources.PeeringRoute) for i in results) diff --git a/packages/google-cloud-vpc-access/noxfile.py b/packages/google-cloud-vpc-access/noxfile.py index a7fb5d0c91e1..2373fb9badc1 100644 --- a/packages/google-cloud-vpc-access/noxfile.py +++ b/packages/google-cloud-vpc-access/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-vpc-access/testing/constraints-3.15.txt b/packages/google-cloud-vpc-access/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-vpc-access/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-vpc-access/tests/unit/gapic/vpcaccess_v1/test_vpc_access_service.py b/packages/google-cloud-vpc-access/tests/unit/gapic/vpcaccess_v1/test_vpc_access_service.py index fa8b0ea0ceaa..dc1ff67451f2 100644 --- a/packages/google-cloud-vpc-access/tests/unit/gapic/vpcaccess_v1/test_vpc_access_service.py +++ b/packages/google-cloud-vpc-access/tests/unit/gapic/vpcaccess_v1/test_vpc_access_service.py @@ -2447,6 +2447,9 @@ def test_list_connectors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vpc_access.Connector) for i in results) @@ -2535,6 +2538,8 @@ async def test_list_connectors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3548,6 +3553,9 @@ def test_list_connectors_rest_pager(transport: str = "rest"): pager = client.list_connectors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vpc_access.Connector) for i in results) diff --git a/packages/google-cloud-webrisk/noxfile.py b/packages/google-cloud-webrisk/noxfile.py index 0f2c3773d9fe..dac3b6ebd4c0 100644 --- a/packages/google-cloud-webrisk/noxfile.py +++ b/packages/google-cloud-webrisk/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-webrisk/testing/constraints-3.15.txt b/packages/google-cloud-webrisk/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-webrisk/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-websecurityscanner/noxfile.py b/packages/google-cloud-websecurityscanner/noxfile.py index 9f29ec42138c..22f051f53d40 100644 --- a/packages/google-cloud-websecurityscanner/noxfile.py +++ b/packages/google-cloud-websecurityscanner/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-websecurityscanner/testing/constraints-3.15.txt b/packages/google-cloud-websecurityscanner/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-websecurityscanner/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-websecurityscanner/tests/unit/gapic/websecurityscanner_v1/test_web_security_scanner.py b/packages/google-cloud-websecurityscanner/tests/unit/gapic/websecurityscanner_v1/test_web_security_scanner.py index 443900a50b67..9e9ac93bf4a7 100644 --- a/packages/google-cloud-websecurityscanner/tests/unit/gapic/websecurityscanner_v1/test_web_security_scanner.py +++ b/packages/google-cloud-websecurityscanner/tests/unit/gapic/websecurityscanner_v1/test_web_security_scanner.py @@ -2520,6 +2520,9 @@ def test_list_scan_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, scan_config.ScanConfig) for i in results) @@ -2612,6 +2615,8 @@ async def test_list_scan_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3786,6 +3791,9 @@ def test_list_scan_runs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, scan_run.ScanRun) for i in results) @@ -3874,6 +3882,8 @@ async def test_list_scan_runs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4498,6 +4508,9 @@ def test_list_crawled_urls_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, crawled_url.CrawledUrl) for i in results) @@ -4590,6 +4603,8 @@ async def test_list_crawled_urls_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5220,6 +5235,9 @@ def test_list_findings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, finding.Finding) for i in results) @@ -5308,6 +5326,8 @@ async def test_list_findings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5822,6 +5842,9 @@ def test_list_scan_configs_rest_pager(transport: str = "rest"): pager = client.list_scan_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, scan_config.ScanConfig) for i in results) @@ -6033,6 +6056,9 @@ def test_list_scan_runs_rest_pager(transport: str = "rest"): pager = client.list_scan_runs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, scan_run.ScanRun) for i in results) @@ -6172,6 +6198,9 @@ def test_list_crawled_urls_rest_pager(transport: str = "rest"): pager = client.list_crawled_urls(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, crawled_url.CrawledUrl) for i in results) @@ -6309,6 +6338,9 @@ def test_list_findings_rest_pager(transport: str = "rest"): pager = client.list_findings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, finding.Finding) for i in results) diff --git a/packages/google-cloud-websecurityscanner/tests/unit/gapic/websecurityscanner_v1alpha/test_web_security_scanner.py b/packages/google-cloud-websecurityscanner/tests/unit/gapic/websecurityscanner_v1alpha/test_web_security_scanner.py index f3766a3ac65f..57338fdec6a8 100644 --- a/packages/google-cloud-websecurityscanner/tests/unit/gapic/websecurityscanner_v1alpha/test_web_security_scanner.py +++ b/packages/google-cloud-websecurityscanner/tests/unit/gapic/websecurityscanner_v1alpha/test_web_security_scanner.py @@ -2831,6 +2831,9 @@ def test_list_scan_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, scan_config.ScanConfig) for i in results) @@ -2923,6 +2926,8 @@ async def test_list_scan_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4417,6 +4422,9 @@ def test_list_scan_runs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, scan_run.ScanRun) for i in results) @@ -4505,6 +4513,8 @@ async def test_list_scan_runs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5295,6 +5305,9 @@ def test_list_crawled_urls_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, crawled_url.CrawledUrl) for i in results) @@ -5387,6 +5400,8 @@ async def test_list_crawled_urls_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6185,6 +6200,9 @@ def test_list_findings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, finding.Finding) for i in results) @@ -6273,6 +6291,8 @@ async def test_list_findings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7458,6 +7478,9 @@ def test_list_scan_configs_rest_pager(transport: str = "rest"): pager = client.list_scan_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, scan_config.ScanConfig) for i in results) @@ -8264,6 +8287,9 @@ def test_list_scan_runs_rest_pager(transport: str = "rest"): pager = client.list_scan_runs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, scan_run.ScanRun) for i in results) @@ -8707,6 +8733,9 @@ def test_list_crawled_urls_rest_pager(transport: str = "rest"): pager = client.list_crawled_urls(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, crawled_url.CrawledUrl) for i in results) @@ -9169,6 +9198,9 @@ def test_list_findings_rest_pager(transport: str = "rest"): pager = client.list_findings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, finding.Finding) for i in results) diff --git a/packages/google-cloud-websecurityscanner/tests/unit/gapic/websecurityscanner_v1beta/test_web_security_scanner.py b/packages/google-cloud-websecurityscanner/tests/unit/gapic/websecurityscanner_v1beta/test_web_security_scanner.py index c8ea1922d352..1a78b9532a75 100644 --- a/packages/google-cloud-websecurityscanner/tests/unit/gapic/websecurityscanner_v1beta/test_web_security_scanner.py +++ b/packages/google-cloud-websecurityscanner/tests/unit/gapic/websecurityscanner_v1beta/test_web_security_scanner.py @@ -2862,6 +2862,9 @@ def test_list_scan_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, scan_config.ScanConfig) for i in results) @@ -2954,6 +2957,8 @@ async def test_list_scan_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4462,6 +4467,9 @@ def test_list_scan_runs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, scan_run.ScanRun) for i in results) @@ -4550,6 +4558,8 @@ async def test_list_scan_runs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5340,6 +5350,9 @@ def test_list_crawled_urls_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, crawled_url.CrawledUrl) for i in results) @@ -5432,6 +5445,8 @@ async def test_list_crawled_urls_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6230,6 +6245,9 @@ def test_list_findings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, finding.Finding) for i in results) @@ -6318,6 +6336,8 @@ async def test_list_findings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7503,6 +7523,9 @@ def test_list_scan_configs_rest_pager(transport: str = "rest"): pager = client.list_scan_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, scan_config.ScanConfig) for i in results) @@ -8309,6 +8332,9 @@ def test_list_scan_runs_rest_pager(transport: str = "rest"): pager = client.list_scan_runs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, scan_run.ScanRun) for i in results) @@ -8752,6 +8778,9 @@ def test_list_crawled_urls_rest_pager(transport: str = "rest"): pager = client.list_crawled_urls(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, crawled_url.CrawledUrl) for i in results) @@ -9214,6 +9243,9 @@ def test_list_findings_rest_pager(transport: str = "rest"): pager = client.list_findings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, finding.Finding) for i in results) diff --git a/packages/google-cloud-workflows/noxfile.py b/packages/google-cloud-workflows/noxfile.py index 1dcb81730459..3592d48c9059 100644 --- a/packages/google-cloud-workflows/noxfile.py +++ b/packages/google-cloud-workflows/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-workflows/testing/constraints-3.15.txt b/packages/google-cloud-workflows/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-workflows/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-workflows/tests/unit/gapic/executions_v1/test_executions.py b/packages/google-cloud-workflows/tests/unit/gapic/executions_v1/test_executions.py index 83acd5324848..413bfba691b5 100644 --- a/packages/google-cloud-workflows/tests/unit/gapic/executions_v1/test_executions.py +++ b/packages/google-cloud-workflows/tests/unit/gapic/executions_v1/test_executions.py @@ -1642,6 +1642,9 @@ def test_list_executions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, executions.Execution) for i in results) @@ -1730,6 +1733,8 @@ async def test_list_executions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-workflows/tests/unit/gapic/executions_v1beta/test_executions.py b/packages/google-cloud-workflows/tests/unit/gapic/executions_v1beta/test_executions.py index 976d0b0410a9..ee0cdffbb3f0 100644 --- a/packages/google-cloud-workflows/tests/unit/gapic/executions_v1beta/test_executions.py +++ b/packages/google-cloud-workflows/tests/unit/gapic/executions_v1beta/test_executions.py @@ -1637,6 +1637,9 @@ def test_list_executions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, executions.Execution) for i in results) @@ -1725,6 +1728,8 @@ async def test_list_executions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-cloud-workflows/tests/unit/gapic/workflows_v1/test_workflows.py b/packages/google-cloud-workflows/tests/unit/gapic/workflows_v1/test_workflows.py index 2eacabfe7890..7b30695b3273 100644 --- a/packages/google-cloud-workflows/tests/unit/gapic/workflows_v1/test_workflows.py +++ b/packages/google-cloud-workflows/tests/unit/gapic/workflows_v1/test_workflows.py @@ -1669,6 +1669,9 @@ def test_list_workflows_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workflows.Workflow) for i in results) @@ -1757,6 +1760,8 @@ async def test_list_workflows_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3503,6 +3508,9 @@ def test_list_workflow_revisions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workflows.Workflow) for i in results) @@ -3595,6 +3603,8 @@ async def test_list_workflow_revisions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3898,6 +3908,9 @@ def test_list_workflows_rest_pager(transport: str = "rest"): pager = client.list_workflows(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workflows.Workflow) for i in results) @@ -4844,6 +4857,9 @@ def test_list_workflow_revisions_rest_pager(transport: str = "rest"): pager = client.list_workflow_revisions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workflows.Workflow) for i in results) diff --git a/packages/google-cloud-workflows/tests/unit/gapic/workflows_v1beta/test_workflows.py b/packages/google-cloud-workflows/tests/unit/gapic/workflows_v1beta/test_workflows.py index 4a79338e3d08..49c79e6d81a7 100644 --- a/packages/google-cloud-workflows/tests/unit/gapic/workflows_v1beta/test_workflows.py +++ b/packages/google-cloud-workflows/tests/unit/gapic/workflows_v1beta/test_workflows.py @@ -1669,6 +1669,9 @@ def test_list_workflows_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workflows.Workflow) for i in results) @@ -1757,6 +1760,8 @@ async def test_list_workflows_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3408,6 +3413,9 @@ def test_list_workflows_rest_pager(transport: str = "rest"): pager = client.list_workflows(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workflows.Workflow) for i in results) diff --git a/packages/google-cloud-workloadmanager/noxfile.py b/packages/google-cloud-workloadmanager/noxfile.py index b6227bea2e3b..ebda7dfd1c56 100644 --- a/packages/google-cloud-workloadmanager/noxfile.py +++ b/packages/google-cloud-workloadmanager/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-workloadmanager/testing/constraints-3.15.txt b/packages/google-cloud-workloadmanager/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-cloud-workloadmanager/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-cloud-workloadmanager/tests/unit/gapic/workloadmanager_v1/test_workload_manager.py b/packages/google-cloud-workloadmanager/tests/unit/gapic/workloadmanager_v1/test_workload_manager.py index 3b6d41a0ce21..68174b8f47b6 100644 --- a/packages/google-cloud-workloadmanager/tests/unit/gapic/workloadmanager_v1/test_workload_manager.py +++ b/packages/google-cloud-workloadmanager/tests/unit/gapic/workloadmanager_v1/test_workload_manager.py @@ -1741,6 +1741,9 @@ def test_list_evaluations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Evaluation) for i in results) @@ -1829,6 +1832,8 @@ async def test_list_evaluations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3677,6 +3682,9 @@ def test_list_executions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Execution) for i in results) @@ -3765,6 +3773,8 @@ async def test_list_executions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5238,6 +5248,9 @@ def test_list_execution_results_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.ExecutionResult) for i in results) @@ -5330,6 +5343,8 @@ async def test_list_execution_results_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6111,6 +6126,9 @@ def test_list_scanned_resources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.ScannedResource) for i in results) @@ -6203,6 +6221,8 @@ async def test_list_scanned_resources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6509,6 +6529,9 @@ def test_list_evaluations_rest_pager(transport: str = "rest"): pager = client.list_evaluations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Evaluation) for i in results) @@ -7564,6 +7587,9 @@ def test_list_executions_rest_pager(transport: str = "rest"): pager = client.list_executions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.Execution) for i in results) @@ -8387,6 +8413,9 @@ def test_list_execution_results_rest_pager(transport: str = "rest"): pager = client.list_execution_results(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.ExecutionResult) for i in results) @@ -8854,6 +8883,9 @@ def test_list_scanned_resources_rest_pager(transport: str = "rest"): pager = client.list_scanned_resources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, service.ScannedResource) for i in results) diff --git a/packages/google-cloud-workstations/noxfile.py b/packages/google-cloud-workstations/noxfile.py index 29ad30aa8dce..1583261baaa4 100644 --- a/packages/google-cloud-workstations/noxfile.py +++ b/packages/google-cloud-workstations/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-cloud-workstations/testing/constraints-3.15.txt b/packages/google-cloud-workstations/testing/constraints-3.15.txt new file mode 100644 index 000000000000..f85022a2fb62 --- /dev/null +++ b/packages/google-cloud-workstations/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +grpc-google-iam-v1>=0 diff --git a/packages/google-cloud-workstations/tests/unit/gapic/workstations_v1/test_workstations.py b/packages/google-cloud-workstations/tests/unit/gapic/workstations_v1/test_workstations.py index d055e9cdf871..9428f849ee78 100644 --- a/packages/google-cloud-workstations/tests/unit/gapic/workstations_v1/test_workstations.py +++ b/packages/google-cloud-workstations/tests/unit/gapic/workstations_v1/test_workstations.py @@ -2111,6 +2111,9 @@ def test_list_workstation_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.WorkstationCluster) for i in results) @@ -2203,6 +2206,8 @@ async def test_list_workstation_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4126,6 +4131,9 @@ def test_list_workstation_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.WorkstationConfig) for i in results) @@ -4218,6 +4226,8 @@ async def test_list_workstation_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4677,6 +4687,9 @@ def test_list_usable_workstation_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.WorkstationConfig) for i in results) @@ -4769,6 +4782,8 @@ async def test_list_usable_workstation_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6658,6 +6673,9 @@ def test_list_workstations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.Workstation) for i in results) @@ -6750,6 +6768,8 @@ async def test_list_workstations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7209,6 +7229,9 @@ def test_list_usable_workstations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.Workstation) for i in results) @@ -7301,6 +7324,8 @@ async def test_list_usable_workstations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -9888,6 +9913,9 @@ def test_list_workstation_clusters_rest_pager(transport: str = "rest"): pager = client.list_workstation_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.WorkstationCluster) for i in results) @@ -10971,6 +10999,9 @@ def test_list_workstation_configs_rest_pager(transport: str = "rest"): pager = client.list_workstation_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.WorkstationConfig) for i in results) @@ -11243,6 +11274,9 @@ def test_list_usable_workstation_configs_rest_pager(transport: str = "rest"): pager = client.list_usable_workstation_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.WorkstationConfig) for i in results) @@ -12322,6 +12356,9 @@ def test_list_workstations_rest_pager(transport: str = "rest"): pager = client.list_workstations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.Workstation) for i in results) @@ -12587,6 +12624,9 @@ def test_list_usable_workstations_rest_pager(transport: str = "rest"): pager = client.list_usable_workstations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.Workstation) for i in results) diff --git a/packages/google-cloud-workstations/tests/unit/gapic/workstations_v1beta/test_workstations.py b/packages/google-cloud-workstations/tests/unit/gapic/workstations_v1beta/test_workstations.py index 0e0dadd3fb7f..f8d088ad1fa8 100644 --- a/packages/google-cloud-workstations/tests/unit/gapic/workstations_v1beta/test_workstations.py +++ b/packages/google-cloud-workstations/tests/unit/gapic/workstations_v1beta/test_workstations.py @@ -2119,6 +2119,9 @@ def test_list_workstation_clusters_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.WorkstationCluster) for i in results) @@ -2211,6 +2214,8 @@ async def test_list_workstation_clusters_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4146,6 +4151,9 @@ def test_list_workstation_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.WorkstationConfig) for i in results) @@ -4238,6 +4246,8 @@ async def test_list_workstation_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4697,6 +4707,9 @@ def test_list_usable_workstation_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.WorkstationConfig) for i in results) @@ -4789,6 +4802,8 @@ async def test_list_usable_workstation_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6690,6 +6705,9 @@ def test_list_workstations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.Workstation) for i in results) @@ -6782,6 +6800,8 @@ async def test_list_workstations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7241,6 +7261,9 @@ def test_list_usable_workstations_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.Workstation) for i in results) @@ -7333,6 +7356,8 @@ async def test_list_usable_workstations_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -10250,6 +10275,9 @@ def test_list_workstation_clusters_rest_pager(transport: str = "rest"): pager = client.list_workstation_clusters(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.WorkstationCluster) for i in results) @@ -11333,6 +11361,9 @@ def test_list_workstation_configs_rest_pager(transport: str = "rest"): pager = client.list_workstation_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.WorkstationConfig) for i in results) @@ -11605,6 +11636,9 @@ def test_list_usable_workstation_configs_rest_pager(transport: str = "rest"): pager = client.list_usable_workstation_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.WorkstationConfig) for i in results) @@ -12684,6 +12718,9 @@ def test_list_workstations_rest_pager(transport: str = "rest"): pager = client.list_workstations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.Workstation) for i in results) @@ -12949,6 +12986,9 @@ def test_list_usable_workstations_rest_pager(transport: str = "rest"): pager = client.list_usable_workstations(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, workstations.Workstation) for i in results) diff --git a/packages/google-developer-knowledge/noxfile.py b/packages/google-developer-knowledge/noxfile.py index 24048446e495..84ec08f740b8 100644 --- a/packages/google-developer-knowledge/noxfile.py +++ b/packages/google-developer-knowledge/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-developer-knowledge/testing/constraints-3.15.txt b/packages/google-developer-knowledge/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-developer-knowledge/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-developer-knowledge/tests/unit/gapic/developer_knowledge_v1/test_developer_knowledge.py b/packages/google-developer-knowledge/tests/unit/gapic/developer_knowledge_v1/test_developer_knowledge.py index 1e0b3891eb92..394121e1a0bd 100644 --- a/packages/google-developer-knowledge/tests/unit/gapic/developer_knowledge_v1/test_developer_knowledge.py +++ b/packages/google-developer-knowledge/tests/unit/gapic/developer_knowledge_v1/test_developer_knowledge.py @@ -1612,6 +1612,9 @@ def test_search_document_chunks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, developerknowledge.DocumentChunk) for i in results) @@ -1704,6 +1707,8 @@ async def test_search_document_chunks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2497,6 +2502,9 @@ def test_search_document_chunks_rest_pager(transport: str = "rest"): pager = client.search_document_chunks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, developerknowledge.DocumentChunk) for i in results) diff --git a/packages/google-devicesandservices-health/noxfile.py b/packages/google-devicesandservices-health/noxfile.py index 167314ff8a7a..72307628ea0b 100644 --- a/packages/google-devicesandservices-health/noxfile.py +++ b/packages/google-devicesandservices-health/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-devicesandservices-health/testing/constraints-3.15.txt b/packages/google-devicesandservices-health/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-devicesandservices-health/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-devicesandservices-health/tests/unit/gapic/health_v4/test_data_points_service.py b/packages/google-devicesandservices-health/tests/unit/gapic/health_v4/test_data_points_service.py index 09f6cc35bcde..bb52391ac432 100644 --- a/packages/google-devicesandservices-health/tests/unit/gapic/health_v4/test_data_points_service.py +++ b/packages/google-devicesandservices-health/tests/unit/gapic/health_v4/test_data_points_service.py @@ -2085,6 +2085,9 @@ def test_list_data_points_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_points.DataPoint) for i in results) @@ -2173,6 +2176,8 @@ async def test_list_data_points_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3571,6 +3576,9 @@ def test_reconcile_data_points_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_points.ReconciledDataPoint) for i in results) @@ -3663,6 +3671,8 @@ async def test_reconcile_data_points_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4029,6 +4039,9 @@ def test_roll_up_data_points_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_points.RollupDataPoint) for i in results) @@ -4121,6 +4134,8 @@ async def test_roll_up_data_points_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5202,6 +5217,9 @@ def test_list_data_points_rest_pager(transport: str = "rest"): pager = client.list_data_points(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_points.DataPoint) for i in results) @@ -5926,6 +5944,9 @@ def test_reconcile_data_points_rest_pager(transport: str = "rest"): pager = client.reconcile_data_points(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_points.ReconciledDataPoint) for i in results) @@ -6123,6 +6144,9 @@ def test_roll_up_data_points_rest_pager(transport: str = "rest"): pager = client.roll_up_data_points(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_points.RollupDataPoint) for i in results) diff --git a/packages/google-devicesandservices-health/tests/unit/gapic/health_v4/test_data_subscription_service.py b/packages/google-devicesandservices-health/tests/unit/gapic/health_v4/test_data_subscription_service.py index d20c45db4cd8..ca241d8c08f7 100644 --- a/packages/google-devicesandservices-health/tests/unit/gapic/health_v4/test_data_subscription_service.py +++ b/packages/google-devicesandservices-health/tests/unit/gapic/health_v4/test_data_subscription_service.py @@ -2156,6 +2156,9 @@ def test_list_subscribers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_subscription_service.Subscriber) for i in results) @@ -2244,6 +2247,8 @@ async def test_list_subscribers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3774,6 +3779,9 @@ def test_list_subscriptions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3868,6 +3876,8 @@ async def test_list_subscriptions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5059,6 +5069,9 @@ def test_list_subscribers_rest_pager(transport: str = "rest"): pager = client.list_subscribers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, data_subscription_service.Subscriber) for i in results) @@ -5886,6 +5899,9 @@ def test_list_subscriptions_rest_pager(transport: str = "rest"): pager = client.list_subscriptions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-devicesandservices-health/tests/unit/gapic/health_v4/test_health_profile_service.py b/packages/google-devicesandservices-health/tests/unit/gapic/health_v4/test_health_profile_service.py index 253b34ea9a1d..d35c9f5fbcaf 100644 --- a/packages/google-devicesandservices-health/tests/unit/gapic/health_v4/test_health_profile_service.py +++ b/packages/google-devicesandservices-health/tests/unit/gapic/health_v4/test_health_profile_service.py @@ -4326,6 +4326,9 @@ def test_list_paired_devices_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, health_profile.PairedDevice) for i in results) @@ -4418,6 +4421,8 @@ async def test_list_paired_devices_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5956,6 +5961,9 @@ def test_list_paired_devices_rest_pager(transport: str = "rest"): pager = client.list_paired_devices(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, health_profile.PairedDevice) for i in results) diff --git a/packages/google-geo-type/noxfile.py b/packages/google-geo-type/noxfile.py index c7dd9bef9aaa..3bc8fff4d8dd 100644 --- a/packages/google-geo-type/noxfile.py +++ b/packages/google-geo-type/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-geo-type/testing/constraints-3.15.txt b/packages/google-geo-type/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-geo-type/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-maps-addressvalidation/noxfile.py b/packages/google-maps-addressvalidation/noxfile.py index 680ee645d9d6..b67244329997 100644 --- a/packages/google-maps-addressvalidation/noxfile.py +++ b/packages/google-maps-addressvalidation/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-maps-addressvalidation/testing/constraints-3.15.txt b/packages/google-maps-addressvalidation/testing/constraints-3.15.txt new file mode 100644 index 000000000000..5c8b50a29836 --- /dev/null +++ b/packages/google-maps-addressvalidation/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-geo-type>=0 diff --git a/packages/google-maps-areainsights/noxfile.py b/packages/google-maps-areainsights/noxfile.py index 6c48887a54f5..a99a43c9937f 100644 --- a/packages/google-maps-areainsights/noxfile.py +++ b/packages/google-maps-areainsights/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-maps-areainsights/testing/constraints-3.15.txt b/packages/google-maps-areainsights/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-maps-areainsights/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-maps-fleetengine-delivery/noxfile.py b/packages/google-maps-fleetengine-delivery/noxfile.py index 965946a51d4c..bd729f251d17 100644 --- a/packages/google-maps-fleetengine-delivery/noxfile.py +++ b/packages/google-maps-fleetengine-delivery/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-maps-fleetengine-delivery/testing/constraints-3.15.txt b/packages/google-maps-fleetengine-delivery/testing/constraints-3.15.txt new file mode 100644 index 000000000000..5c8b50a29836 --- /dev/null +++ b/packages/google-maps-fleetengine-delivery/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-geo-type>=0 diff --git a/packages/google-maps-fleetengine-delivery/tests/unit/gapic/fleetengine_delivery_v1/test_delivery_service.py b/packages/google-maps-fleetengine-delivery/tests/unit/gapic/fleetengine_delivery_v1/test_delivery_service.py index d29afddd7f53..2d88469aad2d 100644 --- a/packages/google-maps-fleetengine-delivery/tests/unit/gapic/fleetengine_delivery_v1/test_delivery_service.py +++ b/packages/google-maps-fleetengine-delivery/tests/unit/gapic/fleetengine_delivery_v1/test_delivery_service.py @@ -4197,6 +4197,9 @@ def test_list_tasks_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tasks.Task) for i in results) @@ -4285,6 +4288,8 @@ async def test_list_tasks_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4966,6 +4971,9 @@ def test_list_delivery_vehicles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, delivery_vehicles.DeliveryVehicle) for i in results) @@ -5058,6 +5066,8 @@ async def test_list_delivery_vehicles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7029,6 +7039,9 @@ def test_list_tasks_rest_pager(transport: str = "rest"): pager = client.list_tasks(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, tasks.Task) for i in results) @@ -7479,6 +7492,9 @@ def test_list_delivery_vehicles_rest_pager(transport: str = "rest"): pager = client.list_delivery_vehicles(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, delivery_vehicles.DeliveryVehicle) for i in results) diff --git a/packages/google-maps-fleetengine/noxfile.py b/packages/google-maps-fleetengine/noxfile.py index a4e7bf463821..df0ea1223f3f 100644 --- a/packages/google-maps-fleetengine/noxfile.py +++ b/packages/google-maps-fleetengine/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-maps-fleetengine/testing/constraints-3.15.txt b/packages/google-maps-fleetengine/testing/constraints-3.15.txt new file mode 100644 index 000000000000..5c8b50a29836 --- /dev/null +++ b/packages/google-maps-fleetengine/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-geo-type>=0 diff --git a/packages/google-maps-fleetengine/tests/unit/gapic/fleetengine_v1/test_trip_service.py b/packages/google-maps-fleetengine/tests/unit/gapic/fleetengine_v1/test_trip_service.py index 0561e4d8acc9..c9a8759af055 100644 --- a/packages/google-maps-fleetengine/tests/unit/gapic/fleetengine_v1/test_trip_service.py +++ b/packages/google-maps-fleetengine/tests/unit/gapic/fleetengine_v1/test_trip_service.py @@ -2373,6 +2373,9 @@ def test_search_trips_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, trips.Trip) for i in results) @@ -2461,6 +2464,8 @@ async def test_search_trips_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-maps-fleetengine/tests/unit/gapic/fleetengine_v1/test_vehicle_service.py b/packages/google-maps-fleetengine/tests/unit/gapic/fleetengine_v1/test_vehicle_service.py index 739a05e389b2..b025bea4602e 100644 --- a/packages/google-maps-fleetengine/tests/unit/gapic/fleetengine_v1/test_vehicle_service.py +++ b/packages/google-maps-fleetengine/tests/unit/gapic/fleetengine_v1/test_vehicle_service.py @@ -2620,6 +2620,9 @@ def test_list_vehicles_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, vehicles.Vehicle) for i in results) @@ -2708,6 +2711,8 @@ async def test_list_vehicles_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) diff --git a/packages/google-maps-geocode/noxfile.py b/packages/google-maps-geocode/noxfile.py index 6a24a982cd73..e567bd642536 100644 --- a/packages/google-maps-geocode/noxfile.py +++ b/packages/google-maps-geocode/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-maps-geocode/testing/constraints-3.15.txt b/packages/google-maps-geocode/testing/constraints-3.15.txt new file mode 100644 index 000000000000..5c8b50a29836 --- /dev/null +++ b/packages/google-maps-geocode/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-geo-type>=0 diff --git a/packages/google-maps-mapmanagement/noxfile.py b/packages/google-maps-mapmanagement/noxfile.py index 253e9b89e435..713bd2558d3f 100644 --- a/packages/google-maps-mapmanagement/noxfile.py +++ b/packages/google-maps-mapmanagement/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-maps-mapmanagement/testing/constraints-3.15.txt b/packages/google-maps-mapmanagement/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-maps-mapmanagement/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-maps-mapmanagement/tests/unit/gapic/mapmanagement_v2beta/test_map_management.py b/packages/google-maps-mapmanagement/tests/unit/gapic/mapmanagement_v2beta/test_map_management.py index c7549c1a3dc8..0593b67c6510 100644 --- a/packages/google-maps-mapmanagement/tests/unit/gapic/mapmanagement_v2beta/test_map_management.py +++ b/packages/google-maps-mapmanagement/tests/unit/gapic/mapmanagement_v2beta/test_map_management.py @@ -2404,6 +2404,9 @@ def test_list_map_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, map_management_service.MapConfig) for i in results) @@ -2492,6 +2495,8 @@ async def test_list_map_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4352,6 +4357,9 @@ def test_list_style_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, map_management_service.StyleConfig) for i in results) @@ -4444,6 +4452,8 @@ async def test_list_style_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -6357,6 +6367,9 @@ def test_list_map_context_configs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -6451,6 +6464,8 @@ async def test_list_map_context_configs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -7842,6 +7857,9 @@ def test_list_map_configs_rest_pager(transport: str = "rest"): pager = client.list_map_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, map_management_service.MapConfig) for i in results) @@ -8835,6 +8853,9 @@ def test_list_style_configs_rest_pager(transport: str = "rest"): pager = client.list_style_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, map_management_service.StyleConfig) for i in results) @@ -9844,6 +9865,9 @@ def test_list_map_context_configs_rest_pager(transport: str = "rest"): pager = client.list_map_context_configs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-maps-mapsplatformdatasets/noxfile.py b/packages/google-maps-mapsplatformdatasets/noxfile.py index d04d30a53abe..e6185fe140a4 100644 --- a/packages/google-maps-mapsplatformdatasets/noxfile.py +++ b/packages/google-maps-mapsplatformdatasets/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-maps-mapsplatformdatasets/testing/constraints-3.15.txt b/packages/google-maps-mapsplatformdatasets/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-maps-mapsplatformdatasets/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-maps-mapsplatformdatasets/tests/unit/gapic/mapsplatformdatasets_v1/test_maps_platform_datasets.py b/packages/google-maps-mapsplatformdatasets/tests/unit/gapic/mapsplatformdatasets_v1/test_maps_platform_datasets.py index 699d9eacb52b..d5eafe4a4348 100644 --- a/packages/google-maps-mapsplatformdatasets/tests/unit/gapic/mapsplatformdatasets_v1/test_maps_platform_datasets.py +++ b/packages/google-maps-mapsplatformdatasets/tests/unit/gapic/mapsplatformdatasets_v1/test_maps_platform_datasets.py @@ -2845,6 +2845,9 @@ def test_fetch_dataset_errors_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, status_pb2.Status) for i in results) @@ -2937,6 +2940,8 @@ async def test_fetch_dataset_errors_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3369,6 +3374,9 @@ def test_list_datasets_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataset.Dataset) for i in results) @@ -3457,6 +3465,8 @@ async def test_list_datasets_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4623,6 +4633,9 @@ def test_fetch_dataset_errors_rest_pager(transport: str = "rest"): pager = client.fetch_dataset_errors(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, status_pb2.Status) for i in results) @@ -4879,6 +4892,9 @@ def test_list_datasets_rest_pager(transport: str = "rest"): pager = client.list_datasets(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, dataset.Dataset) for i in results) diff --git a/packages/google-maps-navconnect/noxfile.py b/packages/google-maps-navconnect/noxfile.py index 1d057e793d4b..74d502e7af95 100644 --- a/packages/google-maps-navconnect/noxfile.py +++ b/packages/google-maps-navconnect/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-maps-navconnect/testing/constraints-3.15.txt b/packages/google-maps-navconnect/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-maps-navconnect/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-maps-places/noxfile.py b/packages/google-maps-places/noxfile.py index e27fd8dfee63..76aa1d4f9d8a 100644 --- a/packages/google-maps-places/noxfile.py +++ b/packages/google-maps-places/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-maps-places/testing/constraints-3.15.txt b/packages/google-maps-places/testing/constraints-3.15.txt new file mode 100644 index 000000000000..5c8b50a29836 --- /dev/null +++ b/packages/google-maps-places/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-geo-type>=0 diff --git a/packages/google-maps-routeoptimization/noxfile.py b/packages/google-maps-routeoptimization/noxfile.py index 8293b48192cf..5b1934d93f9e 100644 --- a/packages/google-maps-routeoptimization/noxfile.py +++ b/packages/google-maps-routeoptimization/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-maps-routeoptimization/testing/constraints-3.15.txt b/packages/google-maps-routeoptimization/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-maps-routeoptimization/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-maps-routing/noxfile.py b/packages/google-maps-routing/noxfile.py index e2059db87494..11d891322afe 100644 --- a/packages/google-maps-routing/noxfile.py +++ b/packages/google-maps-routing/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-maps-routing/testing/constraints-3.15.txt b/packages/google-maps-routing/testing/constraints-3.15.txt new file mode 100644 index 000000000000..5c8b50a29836 --- /dev/null +++ b/packages/google-maps-routing/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-geo-type>=0 diff --git a/packages/google-maps-solar/noxfile.py b/packages/google-maps-solar/noxfile.py index f08fec5fb5d2..37312f47a371 100644 --- a/packages/google-maps-solar/noxfile.py +++ b/packages/google-maps-solar/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-maps-solar/testing/constraints-3.15.txt b/packages/google-maps-solar/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-maps-solar/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-shopping-css/noxfile.py b/packages/google-shopping-css/noxfile.py index 02e587c9552e..d764609674a9 100644 --- a/packages/google-shopping-css/noxfile.py +++ b/packages/google-shopping-css/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-css/testing/constraints-3.15.txt b/packages/google-shopping-css/testing/constraints-3.15.txt new file mode 100644 index 000000000000..72a0563100f5 --- /dev/null +++ b/packages/google-shopping-css/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-shopping-type>=1 diff --git a/packages/google-shopping-css/tests/unit/gapic/css_v1/test_account_labels_service.py b/packages/google-shopping-css/tests/unit/gapic/css_v1/test_account_labels_service.py index b63434754f9a..18daf4ecdd28 100644 --- a/packages/google-shopping-css/tests/unit/gapic/css_v1/test_account_labels_service.py +++ b/packages/google-shopping-css/tests/unit/gapic/css_v1/test_account_labels_service.py @@ -1778,6 +1778,9 @@ def test_list_account_labels_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accounts_labels.AccountLabel) for i in results) @@ -1870,6 +1873,8 @@ async def test_list_account_labels_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3240,6 +3245,9 @@ def test_list_account_labels_rest_pager(transport: str = "rest"): pager = client.list_account_labels(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accounts_labels.AccountLabel) for i in results) diff --git a/packages/google-shopping-css/tests/unit/gapic/css_v1/test_accounts_service.py b/packages/google-shopping-css/tests/unit/gapic/css_v1/test_accounts_service.py index 9e97cedb4fe5..a860d17ef0ef 100644 --- a/packages/google-shopping-css/tests/unit/gapic/css_v1/test_accounts_service.py +++ b/packages/google-shopping-css/tests/unit/gapic/css_v1/test_accounts_service.py @@ -1744,6 +1744,9 @@ def test_list_child_accounts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accounts.Account) for i in results) @@ -1836,6 +1839,8 @@ async def test_list_child_accounts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2845,6 +2850,9 @@ def test_list_child_accounts_rest_pager(transport: str = "rest"): pager = client.list_child_accounts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accounts.Account) for i in results) diff --git a/packages/google-shopping-css/tests/unit/gapic/css_v1/test_css_products_service.py b/packages/google-shopping-css/tests/unit/gapic/css_v1/test_css_products_service.py index 4e281e28ea7e..6a8dc490afbe 100644 --- a/packages/google-shopping-css/tests/unit/gapic/css_v1/test_css_products_service.py +++ b/packages/google-shopping-css/tests/unit/gapic/css_v1/test_css_products_service.py @@ -2095,6 +2095,9 @@ def test_list_css_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, css_products.CssProduct) for i in results) @@ -2187,6 +2190,8 @@ async def test_list_css_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2665,6 +2670,9 @@ def test_list_css_products_rest_pager(transport: str = "rest"): pager = client.list_css_products(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, css_products.CssProduct) for i in results) diff --git a/packages/google-shopping-css/tests/unit/gapic/css_v1/test_quota_service.py b/packages/google-shopping-css/tests/unit/gapic/css_v1/test_quota_service.py index bf18d6bfad6c..9d993fd3aaf9 100644 --- a/packages/google-shopping-css/tests/unit/gapic/css_v1/test_quota_service.py +++ b/packages/google-shopping-css/tests/unit/gapic/css_v1/test_quota_service.py @@ -1693,6 +1693,9 @@ def test_list_quota_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, quota.QuotaGroup) for i in results) @@ -1785,6 +1788,8 @@ async def test_list_quota_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2085,6 +2090,9 @@ def test_list_quota_groups_rest_pager(transport: str = "rest"): pager = client.list_quota_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, quota.QuotaGroup) for i in results) diff --git a/packages/google-shopping-merchant-accounts/noxfile.py b/packages/google-shopping-merchant-accounts/noxfile.py index 0616e719e46a..fc64e97bb7e1 100644 --- a/packages/google-shopping-merchant-accounts/noxfile.py +++ b/packages/google-shopping-merchant-accounts/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-accounts/testing/constraints-3.15.txt b/packages/google-shopping-merchant-accounts/testing/constraints-3.15.txt new file mode 100644 index 000000000000..72a0563100f5 --- /dev/null +++ b/packages/google-shopping-merchant-accounts/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-shopping-type>=1 diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_account_issue_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_account_issue_service.py index 0b850e57cee6..3e721d7a9dd5 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_account_issue_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_account_issue_service.py @@ -1782,6 +1782,9 @@ def test_list_account_issues_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accountissue.AccountIssue) for i in results) @@ -1874,6 +1877,8 @@ async def test_list_account_issues_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2183,6 +2188,9 @@ def test_list_account_issues_rest_pager(transport: str = "rest"): pager = client.list_account_issues(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accountissue.AccountIssue) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_account_relationships_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_account_relationships_service.py index 3cc563b2be05..d8d9470ea8cf 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_account_relationships_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_account_relationships_service.py @@ -2555,6 +2555,9 @@ def test_list_account_relationships_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2649,6 +2652,8 @@ async def test_list_account_relationships_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3333,6 +3338,9 @@ def test_list_account_relationships_rest_pager(transport: str = "rest"): pager = client.list_account_relationships(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_account_services_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_account_services_service.py index e62d8b27bb31..dc162be2f6cc 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_account_services_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_account_services_service.py @@ -2145,6 +2145,9 @@ def test_list_account_services_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accountservices.AccountService) for i in results) @@ -2237,6 +2240,8 @@ async def test_list_account_services_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3801,6 +3806,9 @@ def test_list_account_services_rest_pager(transport: str = "rest"): pager = client.list_account_services(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accountservices.AccountService) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_accounts_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_accounts_service.py index 94379fb6d646..66c525810eff 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_accounts_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_accounts_service.py @@ -3160,6 +3160,9 @@ def test_list_accounts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accounts.Account) for i in results) @@ -3248,6 +3251,8 @@ async def test_list_accounts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3694,6 +3699,9 @@ def test_list_sub_accounts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accounts.Account) for i in results) @@ -3786,6 +3794,8 @@ async def test_list_sub_accounts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4774,6 +4784,9 @@ def test_list_accounts_rest_pager(transport: str = "rest"): pager = client.list_accounts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accounts.Account) for i in results) @@ -5030,6 +5043,9 @@ def test_list_sub_accounts_rest_pager(transport: str = "rest"): pager = client.list_sub_accounts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accounts.Account) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_gbp_accounts_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_gbp_accounts_service.py index 8ebab7a99d60..ba413f1dba3e 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_gbp_accounts_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_gbp_accounts_service.py @@ -1759,6 +1759,9 @@ def test_list_gbp_accounts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gbpaccounts.GbpAccount) for i in results) @@ -1851,6 +1854,8 @@ async def test_list_gbp_accounts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2476,6 +2481,9 @@ def test_list_gbp_accounts_rest_pager(transport: str = "rest"): pager = client.list_gbp_accounts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gbpaccounts.GbpAccount) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_lfp_providers_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_lfp_providers_service.py index e07a31b1ef11..69052717b41c 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_lfp_providers_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_lfp_providers_service.py @@ -1779,6 +1779,9 @@ def test_find_lfp_providers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lfpproviders.LfpProvider) for i in results) @@ -1871,6 +1874,8 @@ async def test_find_lfp_providers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2513,6 +2518,9 @@ def test_find_lfp_providers_rest_pager(transport: str = "rest"): pager = client.find_lfp_providers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lfpproviders.LfpProvider) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_omnichannel_settings_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_omnichannel_settings_service.py index 622396012bae..10a0d8b076a5 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_omnichannel_settings_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_omnichannel_settings_service.py @@ -2168,6 +2168,9 @@ def test_list_omnichannel_settings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2262,6 +2265,8 @@ async def test_list_omnichannel_settings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3840,6 +3845,9 @@ def test_list_omnichannel_settings_rest_pager(transport: str = "rest"): pager = client.list_omnichannel_settings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_online_return_policy_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_online_return_policy_service.py index a22463d4f8fb..5997354419e6 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_online_return_policy_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_online_return_policy_service.py @@ -2212,6 +2212,9 @@ def test_list_online_return_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2306,6 +2309,8 @@ async def test_list_online_return_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3561,6 +3566,9 @@ def test_list_online_return_policies_rest_pager(transport: str = "rest"): pager = client.list_online_return_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_programs_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_programs_service.py index 63793357abb3..4d3eebfcd9f1 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_programs_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_programs_service.py @@ -2054,6 +2054,9 @@ def test_list_programs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, programs.Program) for i in results) @@ -2142,6 +2145,8 @@ async def test_list_programs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3276,6 +3281,9 @@ def test_list_programs_rest_pager(transport: str = "rest"): pager = client.list_programs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, programs.Program) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_regions_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_regions_service.py index 71226727936c..b13baa51a674 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_regions_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_regions_service.py @@ -3763,6 +3763,9 @@ def test_list_regions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, regions.Region) for i in results) @@ -3851,6 +3854,8 @@ async def test_list_regions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5267,6 +5272,9 @@ def test_list_regions_rest_pager(transport: str = "rest"): pager = client.list_regions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, regions.Region) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_user_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_user_service.py index 99866b3bf20b..ae2273b66e88 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_user_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1/test_user_service.py @@ -2982,6 +2982,9 @@ def test_list_users_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, user.User) for i in results) @@ -3070,6 +3073,8 @@ async def test_list_users_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4412,6 +4417,9 @@ def test_list_users_rest_pager(transport: str = "rest"): pager = client.list_users(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, user.User) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_account_issue_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_account_issue_service.py index c5cf23606348..07bf07471063 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_account_issue_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_account_issue_service.py @@ -1782,6 +1782,9 @@ def test_list_account_issues_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accountissue.AccountIssue) for i in results) @@ -1874,6 +1877,8 @@ async def test_list_account_issues_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2183,6 +2188,9 @@ def test_list_account_issues_rest_pager(transport: str = "rest"): pager = client.list_account_issues(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accountissue.AccountIssue) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_account_tax_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_account_tax_service.py index 5fa8d6810c32..e2ab06f47e15 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_account_tax_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_account_tax_service.py @@ -2072,6 +2072,9 @@ def test_list_account_tax_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, account_tax.AccountTax) for i in results) @@ -2160,6 +2163,8 @@ async def test_list_account_tax_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2992,6 +2997,9 @@ def test_list_account_tax_rest_pager(transport: str = "rest"): pager = client.list_account_tax(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, account_tax.AccountTax) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_accounts_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_accounts_service.py index 5f3cab763ec5..b33b64210a99 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_accounts_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_accounts_service.py @@ -2791,6 +2791,9 @@ def test_list_accounts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accounts.Account) for i in results) @@ -2879,6 +2882,8 @@ async def test_list_accounts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3325,6 +3330,9 @@ def test_list_sub_accounts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accounts.Account) for i in results) @@ -3417,6 +3425,8 @@ async def test_list_sub_accounts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4221,6 +4231,9 @@ def test_list_accounts_rest_pager(transport: str = "rest"): pager = client.list_accounts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accounts.Account) for i in results) @@ -4477,6 +4490,9 @@ def test_list_sub_accounts_rest_pager(transport: str = "rest"): pager = client.list_sub_accounts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accounts.Account) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_gbp_accounts_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_gbp_accounts_service.py index 3a8ac9c2c2da..97d4d8b3be92 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_gbp_accounts_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_gbp_accounts_service.py @@ -1759,6 +1759,9 @@ def test_list_gbp_accounts_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gbpaccounts.GbpAccount) for i in results) @@ -1851,6 +1854,8 @@ async def test_list_gbp_accounts_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2477,6 +2482,9 @@ def test_list_gbp_accounts_rest_pager(transport: str = "rest"): pager = client.list_gbp_accounts(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, gbpaccounts.GbpAccount) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_lfp_providers_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_lfp_providers_service.py index b4e3f9a7cfbc..d8264213dff3 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_lfp_providers_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_lfp_providers_service.py @@ -1779,6 +1779,9 @@ def test_find_lfp_providers_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lfpproviders.LfpProvider) for i in results) @@ -1871,6 +1874,8 @@ async def test_find_lfp_providers_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2513,6 +2518,9 @@ def test_find_lfp_providers_rest_pager(transport: str = "rest"): pager = client.find_lfp_providers(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lfpproviders.LfpProvider) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_omnichannel_settings_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_omnichannel_settings_service.py index a0b0a1f4f09d..2671d1352c75 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_omnichannel_settings_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_omnichannel_settings_service.py @@ -2168,6 +2168,9 @@ def test_list_omnichannel_settings_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2262,6 +2265,8 @@ async def test_list_omnichannel_settings_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3840,6 +3845,9 @@ def test_list_omnichannel_settings_rest_pager(transport: str = "rest"): pager = client.list_omnichannel_settings(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_online_return_policy_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_online_return_policy_service.py index 81c7c9732d07..f6d7073afcff 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_online_return_policy_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_online_return_policy_service.py @@ -2213,6 +2213,9 @@ def test_list_online_return_policies_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -2307,6 +2310,8 @@ async def test_list_online_return_policies_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3983,6 +3988,9 @@ def test_list_online_return_policies_rest_pager(transport: str = "rest"): pager = client.list_online_return_policies(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_programs_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_programs_service.py index 80d56e4d59d6..38f1654a454d 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_programs_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_programs_service.py @@ -2054,6 +2054,9 @@ def test_list_programs_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, programs.Program) for i in results) @@ -2142,6 +2145,8 @@ async def test_list_programs_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3276,6 +3281,9 @@ def test_list_programs_rest_pager(transport: str = "rest"): pager = client.list_programs(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, programs.Program) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_regions_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_regions_service.py index cd69a0beca0b..489dd94d5aaa 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_regions_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_regions_service.py @@ -3010,6 +3010,9 @@ def test_list_regions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, regions.Region) for i in results) @@ -3098,6 +3101,8 @@ async def test_list_regions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4118,6 +4123,9 @@ def test_list_regions_rest_pager(transport: str = "rest"): pager = client.list_regions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, regions.Region) for i in results) diff --git a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_user_service.py b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_user_service.py index d192eb55b080..be06211c68bd 100644 --- a/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_user_service.py +++ b/packages/google-shopping-merchant-accounts/tests/unit/gapic/merchant_accounts_v1beta/test_user_service.py @@ -2972,6 +2972,9 @@ def test_list_users_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, user.User) for i in results) @@ -3060,6 +3063,8 @@ async def test_list_users_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4086,6 +4091,9 @@ def test_list_users_rest_pager(transport: str = "rest"): pager = client.list_users(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, user.User) for i in results) diff --git a/packages/google-shopping-merchant-conversions/noxfile.py b/packages/google-shopping-merchant-conversions/noxfile.py index a68d0e59fb95..21e015aff46a 100644 --- a/packages/google-shopping-merchant-conversions/noxfile.py +++ b/packages/google-shopping-merchant-conversions/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-conversions/testing/constraints-3.15.txt b/packages/google-shopping-merchant-conversions/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-shopping-merchant-conversions/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-shopping-merchant-conversions/tests/unit/gapic/merchant_conversions_v1/test_conversion_sources_service.py b/packages/google-shopping-merchant-conversions/tests/unit/gapic/merchant_conversions_v1/test_conversion_sources_service.py index fa2fbe9ab112..0a8f8229139f 100644 --- a/packages/google-shopping-merchant-conversions/tests/unit/gapic/merchant_conversions_v1/test_conversion_sources_service.py +++ b/packages/google-shopping-merchant-conversions/tests/unit/gapic/merchant_conversions_v1/test_conversion_sources_service.py @@ -3518,6 +3518,9 @@ def test_list_conversion_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversionsources.ConversionSource) for i in results) @@ -3610,6 +3613,8 @@ async def test_list_conversion_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4803,6 +4808,9 @@ def test_list_conversion_sources_rest_pager(transport: str = "rest"): pager = client.list_conversion_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversionsources.ConversionSource) for i in results) diff --git a/packages/google-shopping-merchant-conversions/tests/unit/gapic/merchant_conversions_v1beta/test_conversion_sources_service.py b/packages/google-shopping-merchant-conversions/tests/unit/gapic/merchant_conversions_v1beta/test_conversion_sources_service.py index d16c76211ffe..69fd11a06dc4 100644 --- a/packages/google-shopping-merchant-conversions/tests/unit/gapic/merchant_conversions_v1beta/test_conversion_sources_service.py +++ b/packages/google-shopping-merchant-conversions/tests/unit/gapic/merchant_conversions_v1beta/test_conversion_sources_service.py @@ -3518,6 +3518,9 @@ def test_list_conversion_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversionsources.ConversionSource) for i in results) @@ -3610,6 +3613,8 @@ async def test_list_conversion_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4811,6 +4816,9 @@ def test_list_conversion_sources_rest_pager(transport: str = "rest"): pager = client.list_conversion_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, conversionsources.ConversionSource) for i in results) diff --git a/packages/google-shopping-merchant-datasources/noxfile.py b/packages/google-shopping-merchant-datasources/noxfile.py index a127b28df77e..c9961e440763 100644 --- a/packages/google-shopping-merchant-datasources/noxfile.py +++ b/packages/google-shopping-merchant-datasources/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-datasources/testing/constraints-3.15.txt b/packages/google-shopping-merchant-datasources/testing/constraints-3.15.txt new file mode 100644 index 000000000000..72a0563100f5 --- /dev/null +++ b/packages/google-shopping-merchant-datasources/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-shopping-type>=1 diff --git a/packages/google-shopping-merchant-datasources/tests/unit/gapic/merchant_datasources_v1/test_data_sources_service.py b/packages/google-shopping-merchant-datasources/tests/unit/gapic/merchant_datasources_v1/test_data_sources_service.py index adaf82ea4970..2f38ba57f3c8 100644 --- a/packages/google-shopping-merchant-datasources/tests/unit/gapic/merchant_datasources_v1/test_data_sources_service.py +++ b/packages/google-shopping-merchant-datasources/tests/unit/gapic/merchant_datasources_v1/test_data_sources_service.py @@ -2102,6 +2102,9 @@ def test_list_data_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datasources.DataSource) for i in results) @@ -2194,6 +2197,8 @@ async def test_list_data_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4022,6 +4027,9 @@ def test_list_data_sources_rest_pager(transport: str = "rest"): pager = client.list_data_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datasources.DataSource) for i in results) diff --git a/packages/google-shopping-merchant-datasources/tests/unit/gapic/merchant_datasources_v1beta/test_data_sources_service.py b/packages/google-shopping-merchant-datasources/tests/unit/gapic/merchant_datasources_v1beta/test_data_sources_service.py index 3fcff765c772..77c72c71f3b9 100644 --- a/packages/google-shopping-merchant-datasources/tests/unit/gapic/merchant_datasources_v1beta/test_data_sources_service.py +++ b/packages/google-shopping-merchant-datasources/tests/unit/gapic/merchant_datasources_v1beta/test_data_sources_service.py @@ -2102,6 +2102,9 @@ def test_list_data_sources_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datasources.DataSource) for i in results) @@ -2194,6 +2197,8 @@ async def test_list_data_sources_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4022,6 +4027,9 @@ def test_list_data_sources_rest_pager(transport: str = "rest"): pager = client.list_data_sources(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, datasources.DataSource) for i in results) diff --git a/packages/google-shopping-merchant-inventories/noxfile.py b/packages/google-shopping-merchant-inventories/noxfile.py index 0e2b1e69e4c3..47e6aa9df3dd 100644 --- a/packages/google-shopping-merchant-inventories/noxfile.py +++ b/packages/google-shopping-merchant-inventories/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-inventories/testing/constraints-3.15.txt b/packages/google-shopping-merchant-inventories/testing/constraints-3.15.txt new file mode 100644 index 000000000000..72a0563100f5 --- /dev/null +++ b/packages/google-shopping-merchant-inventories/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-shopping-type>=1 diff --git a/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1/test_local_inventory_service.py b/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1/test_local_inventory_service.py index 7f838240e3aa..1f56117d3fc0 100644 --- a/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1/test_local_inventory_service.py +++ b/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1/test_local_inventory_service.py @@ -1789,6 +1789,9 @@ def test_list_local_inventories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, localinventory.LocalInventory) for i in results) @@ -1881,6 +1884,8 @@ async def test_list_local_inventories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2792,6 +2797,9 @@ def test_list_local_inventories_rest_pager(transport: str = "rest"): pager = client.list_local_inventories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, localinventory.LocalInventory) for i in results) diff --git a/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1/test_regional_inventory_service.py b/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1/test_regional_inventory_service.py index 6e60af769285..25fcb7287983 100644 --- a/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1/test_regional_inventory_service.py +++ b/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1/test_regional_inventory_service.py @@ -1801,6 +1801,9 @@ def test_list_regional_inventories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, regionalinventory.RegionalInventory) for i in results) @@ -1893,6 +1896,8 @@ async def test_list_regional_inventories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2811,6 +2816,9 @@ def test_list_regional_inventories_rest_pager(transport: str = "rest"): pager = client.list_regional_inventories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, regionalinventory.RegionalInventory) for i in results) diff --git a/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1beta/test_local_inventory_service.py b/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1beta/test_local_inventory_service.py index d2faa4be0f72..c544fe233ac3 100644 --- a/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1beta/test_local_inventory_service.py +++ b/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1beta/test_local_inventory_service.py @@ -1786,6 +1786,9 @@ def test_list_local_inventories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, localinventory.LocalInventory) for i in results) @@ -1878,6 +1881,8 @@ async def test_list_local_inventories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2805,6 +2810,9 @@ def test_list_local_inventories_rest_pager(transport: str = "rest"): pager = client.list_local_inventories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, localinventory.LocalInventory) for i in results) diff --git a/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1beta/test_regional_inventory_service.py b/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1beta/test_regional_inventory_service.py index 2051454957fa..c6aec8e13838 100644 --- a/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1beta/test_regional_inventory_service.py +++ b/packages/google-shopping-merchant-inventories/tests/unit/gapic/merchant_inventories_v1beta/test_regional_inventory_service.py @@ -1798,6 +1798,9 @@ def test_list_regional_inventories_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, regionalinventory.RegionalInventory) for i in results) @@ -1890,6 +1893,8 @@ async def test_list_regional_inventories_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2808,6 +2813,9 @@ def test_list_regional_inventories_rest_pager(transport: str = "rest"): pager = client.list_regional_inventories(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, regionalinventory.RegionalInventory) for i in results) diff --git a/packages/google-shopping-merchant-issueresolution/noxfile.py b/packages/google-shopping-merchant-issueresolution/noxfile.py index 2969c82734bc..559181f73b9d 100644 --- a/packages/google-shopping-merchant-issueresolution/noxfile.py +++ b/packages/google-shopping-merchant-issueresolution/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-issueresolution/testing/constraints-3.15.txt b/packages/google-shopping-merchant-issueresolution/testing/constraints-3.15.txt new file mode 100644 index 000000000000..72a0563100f5 --- /dev/null +++ b/packages/google-shopping-merchant-issueresolution/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-shopping-type>=1 diff --git a/packages/google-shopping-merchant-issueresolution/tests/unit/gapic/merchant_issueresolution_v1/test_aggregate_product_statuses_service.py b/packages/google-shopping-merchant-issueresolution/tests/unit/gapic/merchant_issueresolution_v1/test_aggregate_product_statuses_service.py index 0ccf45793574..427f45304c0a 100644 --- a/packages/google-shopping-merchant-issueresolution/tests/unit/gapic/merchant_issueresolution_v1/test_aggregate_product_statuses_service.py +++ b/packages/google-shopping-merchant-issueresolution/tests/unit/gapic/merchant_issueresolution_v1/test_aggregate_product_statuses_service.py @@ -1867,6 +1867,9 @@ def test_list_aggregate_product_statuses_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1962,6 +1965,8 @@ async def test_list_aggregate_product_statuses_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2285,6 +2290,9 @@ def test_list_aggregate_product_statuses_rest_pager(transport: str = "rest"): pager = client.list_aggregate_product_statuses(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-shopping-merchant-issueresolution/tests/unit/gapic/merchant_issueresolution_v1beta/test_aggregate_product_statuses_service.py b/packages/google-shopping-merchant-issueresolution/tests/unit/gapic/merchant_issueresolution_v1beta/test_aggregate_product_statuses_service.py index db6ecb3b6e5a..c4105a6a5beb 100644 --- a/packages/google-shopping-merchant-issueresolution/tests/unit/gapic/merchant_issueresolution_v1beta/test_aggregate_product_statuses_service.py +++ b/packages/google-shopping-merchant-issueresolution/tests/unit/gapic/merchant_issueresolution_v1beta/test_aggregate_product_statuses_service.py @@ -1869,6 +1869,9 @@ def test_list_aggregate_product_statuses_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -1964,6 +1967,8 @@ async def test_list_aggregate_product_statuses_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2287,6 +2292,9 @@ def test_list_aggregate_product_statuses_rest_pager(transport: str = "rest"): pager = client.list_aggregate_product_statuses(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-shopping-merchant-lfp/noxfile.py b/packages/google-shopping-merchant-lfp/noxfile.py index 9afbefc28ecc..3bb90729c813 100644 --- a/packages/google-shopping-merchant-lfp/noxfile.py +++ b/packages/google-shopping-merchant-lfp/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-lfp/testing/constraints-3.15.txt b/packages/google-shopping-merchant-lfp/testing/constraints-3.15.txt new file mode 100644 index 000000000000..72a0563100f5 --- /dev/null +++ b/packages/google-shopping-merchant-lfp/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-shopping-type>=1 diff --git a/packages/google-shopping-merchant-lfp/tests/unit/gapic/merchant_lfp_v1/test_lfp_store_service.py b/packages/google-shopping-merchant-lfp/tests/unit/gapic/merchant_lfp_v1/test_lfp_store_service.py index 4e2809e00644..d300ce4efced 100644 --- a/packages/google-shopping-merchant-lfp/tests/unit/gapic/merchant_lfp_v1/test_lfp_store_service.py +++ b/packages/google-shopping-merchant-lfp/tests/unit/gapic/merchant_lfp_v1/test_lfp_store_service.py @@ -2780,6 +2780,9 @@ def test_list_lfp_stores_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lfpstore.LfpStore) for i in results) @@ -2868,6 +2871,8 @@ async def test_list_lfp_stores_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3721,6 +3726,9 @@ def test_list_lfp_stores_rest_pager(transport: str = "rest"): pager = client.list_lfp_stores(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lfpstore.LfpStore) for i in results) diff --git a/packages/google-shopping-merchant-lfp/tests/unit/gapic/merchant_lfp_v1beta/test_lfp_store_service.py b/packages/google-shopping-merchant-lfp/tests/unit/gapic/merchant_lfp_v1beta/test_lfp_store_service.py index ecd9b395e488..c6272e5eddbc 100644 --- a/packages/google-shopping-merchant-lfp/tests/unit/gapic/merchant_lfp_v1beta/test_lfp_store_service.py +++ b/packages/google-shopping-merchant-lfp/tests/unit/gapic/merchant_lfp_v1beta/test_lfp_store_service.py @@ -2780,6 +2780,9 @@ def test_list_lfp_stores_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lfpstore.LfpStore) for i in results) @@ -2868,6 +2871,8 @@ async def test_list_lfp_stores_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3725,6 +3730,9 @@ def test_list_lfp_stores_rest_pager(transport: str = "rest"): pager = client.list_lfp_stores(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, lfpstore.LfpStore) for i in results) diff --git a/packages/google-shopping-merchant-notifications/noxfile.py b/packages/google-shopping-merchant-notifications/noxfile.py index 469d1b1ee453..4b3f534450af 100644 --- a/packages/google-shopping-merchant-notifications/noxfile.py +++ b/packages/google-shopping-merchant-notifications/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-notifications/testing/constraints-3.15.txt b/packages/google-shopping-merchant-notifications/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-shopping-merchant-notifications/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-shopping-merchant-notifications/tests/unit/gapic/merchant_notifications_v1/test_notifications_api_service.py b/packages/google-shopping-merchant-notifications/tests/unit/gapic/merchant_notifications_v1/test_notifications_api_service.py index e6ff066885ce..f0f2a29df5e0 100644 --- a/packages/google-shopping-merchant-notifications/tests/unit/gapic/merchant_notifications_v1/test_notifications_api_service.py +++ b/packages/google-shopping-merchant-notifications/tests/unit/gapic/merchant_notifications_v1/test_notifications_api_service.py @@ -3235,6 +3235,9 @@ def test_list_notification_subscriptions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3329,6 +3332,8 @@ async def test_list_notification_subscriptions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4766,6 +4771,9 @@ def test_list_notification_subscriptions_rest_pager(transport: str = "rest"): pager = client.list_notification_subscriptions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-shopping-merchant-notifications/tests/unit/gapic/merchant_notifications_v1beta/test_notifications_api_service.py b/packages/google-shopping-merchant-notifications/tests/unit/gapic/merchant_notifications_v1beta/test_notifications_api_service.py index 5c75fdad47b1..8fe0338de44b 100644 --- a/packages/google-shopping-merchant-notifications/tests/unit/gapic/merchant_notifications_v1beta/test_notifications_api_service.py +++ b/packages/google-shopping-merchant-notifications/tests/unit/gapic/merchant_notifications_v1beta/test_notifications_api_service.py @@ -3235,6 +3235,9 @@ def test_list_notification_subscriptions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( @@ -3329,6 +3332,8 @@ async def test_list_notification_subscriptions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -4407,6 +4412,9 @@ def test_list_notification_subscriptions_rest_pager(transport: str = "rest"): pager = client.list_notification_subscriptions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all( diff --git a/packages/google-shopping-merchant-ordertracking/noxfile.py b/packages/google-shopping-merchant-ordertracking/noxfile.py index 8d7bfd0b33cb..b81d03d7f132 100644 --- a/packages/google-shopping-merchant-ordertracking/noxfile.py +++ b/packages/google-shopping-merchant-ordertracking/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-ordertracking/testing/constraints-3.15.txt b/packages/google-shopping-merchant-ordertracking/testing/constraints-3.15.txt new file mode 100644 index 000000000000..72a0563100f5 --- /dev/null +++ b/packages/google-shopping-merchant-ordertracking/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-shopping-type>=1 diff --git a/packages/google-shopping-merchant-products/noxfile.py b/packages/google-shopping-merchant-products/noxfile.py index f4f76c8c8be5..3976bf46b634 100644 --- a/packages/google-shopping-merchant-products/noxfile.py +++ b/packages/google-shopping-merchant-products/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-products/testing/constraints-3.15.txt b/packages/google-shopping-merchant-products/testing/constraints-3.15.txt new file mode 100644 index 000000000000..72a0563100f5 --- /dev/null +++ b/packages/google-shopping-merchant-products/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-shopping-type>=1 diff --git a/packages/google-shopping-merchant-products/tests/unit/gapic/merchant_products_v1/test_products_service.py b/packages/google-shopping-merchant-products/tests/unit/gapic/merchant_products_v1/test_products_service.py index 38ec9899d4a2..49a0b326a28d 100644 --- a/packages/google-shopping-merchant-products/tests/unit/gapic/merchant_products_v1/test_products_service.py +++ b/packages/google-shopping-merchant-products/tests/unit/gapic/merchant_products_v1/test_products_service.py @@ -2071,6 +2071,9 @@ def test_list_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, products.Product) for i in results) @@ -2159,6 +2162,8 @@ async def test_list_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2629,6 +2634,9 @@ def test_list_products_rest_pager(transport: str = "rest"): pager = client.list_products(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, products.Product) for i in results) diff --git a/packages/google-shopping-merchant-products/tests/unit/gapic/merchant_products_v1beta/test_products_service.py b/packages/google-shopping-merchant-products/tests/unit/gapic/merchant_products_v1beta/test_products_service.py index 2c637ce8795d..2c8c5a23149e 100644 --- a/packages/google-shopping-merchant-products/tests/unit/gapic/merchant_products_v1beta/test_products_service.py +++ b/packages/google-shopping-merchant-products/tests/unit/gapic/merchant_products_v1beta/test_products_service.py @@ -2067,6 +2067,9 @@ def test_list_products_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, products.Product) for i in results) @@ -2155,6 +2158,8 @@ async def test_list_products_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2625,6 +2630,9 @@ def test_list_products_rest_pager(transport: str = "rest"): pager = client.list_products(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, products.Product) for i in results) diff --git a/packages/google-shopping-merchant-productstudio/noxfile.py b/packages/google-shopping-merchant-productstudio/noxfile.py index dbb49a1245ba..af706ff5af3a 100644 --- a/packages/google-shopping-merchant-productstudio/noxfile.py +++ b/packages/google-shopping-merchant-productstudio/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-productstudio/testing/constraints-3.15.txt b/packages/google-shopping-merchant-productstudio/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-shopping-merchant-productstudio/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-shopping-merchant-promotions/noxfile.py b/packages/google-shopping-merchant-promotions/noxfile.py index 1202be8a0b25..76ffc3961e22 100644 --- a/packages/google-shopping-merchant-promotions/noxfile.py +++ b/packages/google-shopping-merchant-promotions/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-promotions/testing/constraints-3.15.txt b/packages/google-shopping-merchant-promotions/testing/constraints-3.15.txt new file mode 100644 index 000000000000..72a0563100f5 --- /dev/null +++ b/packages/google-shopping-merchant-promotions/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-shopping-type>=1 diff --git a/packages/google-shopping-merchant-promotions/tests/unit/gapic/merchant_promotions_v1/test_promotions_service.py b/packages/google-shopping-merchant-promotions/tests/unit/gapic/merchant_promotions_v1/test_promotions_service.py index 5fd9d8fc75d3..f7b96a57be02 100644 --- a/packages/google-shopping-merchant-promotions/tests/unit/gapic/merchant_promotions_v1/test_promotions_service.py +++ b/packages/google-shopping-merchant-promotions/tests/unit/gapic/merchant_promotions_v1/test_promotions_service.py @@ -2357,6 +2357,9 @@ def test_list_promotions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, promotions.Promotion) for i in results) @@ -2445,6 +2448,8 @@ async def test_list_promotions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3055,6 +3060,9 @@ def test_list_promotions_rest_pager(transport: str = "rest"): pager = client.list_promotions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, promotions.Promotion) for i in results) diff --git a/packages/google-shopping-merchant-promotions/tests/unit/gapic/merchant_promotions_v1beta/test_promotions_service.py b/packages/google-shopping-merchant-promotions/tests/unit/gapic/merchant_promotions_v1beta/test_promotions_service.py index 6c29a0378229..1a49ef5948c6 100644 --- a/packages/google-shopping-merchant-promotions/tests/unit/gapic/merchant_promotions_v1beta/test_promotions_service.py +++ b/packages/google-shopping-merchant-promotions/tests/unit/gapic/merchant_promotions_v1beta/test_promotions_service.py @@ -2360,6 +2360,9 @@ def test_list_promotions_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, promotions.Promotion) for i in results) @@ -2448,6 +2451,8 @@ async def test_list_promotions_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3060,6 +3065,9 @@ def test_list_promotions_rest_pager(transport: str = "rest"): pager = client.list_promotions(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, promotions.Promotion) for i in results) diff --git a/packages/google-shopping-merchant-quota/noxfile.py b/packages/google-shopping-merchant-quota/noxfile.py index a6fe68f6bdbc..e3ee6136969f 100644 --- a/packages/google-shopping-merchant-quota/noxfile.py +++ b/packages/google-shopping-merchant-quota/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-quota/testing/constraints-3.15.txt b/packages/google-shopping-merchant-quota/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-shopping-merchant-quota/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/google-shopping-merchant-quota/tests/unit/gapic/merchant_quota_v1/test_account_limits_service.py b/packages/google-shopping-merchant-quota/tests/unit/gapic/merchant_quota_v1/test_account_limits_service.py index 75215e3a62a7..1b231c0b5ae1 100644 --- a/packages/google-shopping-merchant-quota/tests/unit/gapic/merchant_quota_v1/test_account_limits_service.py +++ b/packages/google-shopping-merchant-quota/tests/unit/gapic/merchant_quota_v1/test_account_limits_service.py @@ -2120,6 +2120,9 @@ def test_list_account_limits_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accountlimits.AccountLimit) for i in results) @@ -2212,6 +2215,8 @@ async def test_list_account_limits_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2716,6 +2721,9 @@ def test_list_account_limits_rest_pager(transport: str = "rest"): pager = client.list_account_limits(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, accountlimits.AccountLimit) for i in results) diff --git a/packages/google-shopping-merchant-quota/tests/unit/gapic/merchant_quota_v1/test_quota_service.py b/packages/google-shopping-merchant-quota/tests/unit/gapic/merchant_quota_v1/test_quota_service.py index 5d9a50f78d61..1b36a54db051 100644 --- a/packages/google-shopping-merchant-quota/tests/unit/gapic/merchant_quota_v1/test_quota_service.py +++ b/packages/google-shopping-merchant-quota/tests/unit/gapic/merchant_quota_v1/test_quota_service.py @@ -1693,6 +1693,9 @@ def test_list_quota_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, quota.QuotaGroup) for i in results) @@ -1785,6 +1788,8 @@ async def test_list_quota_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2085,6 +2090,9 @@ def test_list_quota_groups_rest_pager(transport: str = "rest"): pager = client.list_quota_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, quota.QuotaGroup) for i in results) diff --git a/packages/google-shopping-merchant-quota/tests/unit/gapic/merchant_quota_v1beta/test_quota_service.py b/packages/google-shopping-merchant-quota/tests/unit/gapic/merchant_quota_v1beta/test_quota_service.py index c942e20458a4..539a94707821 100644 --- a/packages/google-shopping-merchant-quota/tests/unit/gapic/merchant_quota_v1beta/test_quota_service.py +++ b/packages/google-shopping-merchant-quota/tests/unit/gapic/merchant_quota_v1beta/test_quota_service.py @@ -1693,6 +1693,9 @@ def test_list_quota_groups_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, quota.QuotaGroup) for i in results) @@ -1785,6 +1788,8 @@ async def test_list_quota_groups_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2086,6 +2091,9 @@ def test_list_quota_groups_rest_pager(transport: str = "rest"): pager = client.list_quota_groups(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, quota.QuotaGroup) for i in results) diff --git a/packages/google-shopping-merchant-reports/noxfile.py b/packages/google-shopping-merchant-reports/noxfile.py index 2d85b52ed1b7..b9e1c9a1f11c 100644 --- a/packages/google-shopping-merchant-reports/noxfile.py +++ b/packages/google-shopping-merchant-reports/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-reports/testing/constraints-3.15.txt b/packages/google-shopping-merchant-reports/testing/constraints-3.15.txt new file mode 100644 index 000000000000..72a0563100f5 --- /dev/null +++ b/packages/google-shopping-merchant-reports/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-shopping-type>=1 diff --git a/packages/google-shopping-merchant-reports/tests/unit/gapic/merchant_reports_v1/test_report_service.py b/packages/google-shopping-merchant-reports/tests/unit/gapic/merchant_reports_v1/test_report_service.py index e50d12960ee4..eb5e87bf5e09 100644 --- a/packages/google-shopping-merchant-reports/tests/unit/gapic/merchant_reports_v1/test_report_service.py +++ b/packages/google-shopping-merchant-reports/tests/unit/gapic/merchant_reports_v1/test_report_service.py @@ -1694,6 +1694,9 @@ def test_search_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reports.ReportRow) for i in results) @@ -1782,6 +1785,8 @@ async def test_search_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2075,6 +2080,9 @@ def test_search_rest_pager(transport: str = "rest"): pager = client.search(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reports.ReportRow) for i in results) diff --git a/packages/google-shopping-merchant-reports/tests/unit/gapic/merchant_reports_v1alpha/test_report_service.py b/packages/google-shopping-merchant-reports/tests/unit/gapic/merchant_reports_v1alpha/test_report_service.py index 989c3a7a98cf..01b010792cc6 100644 --- a/packages/google-shopping-merchant-reports/tests/unit/gapic/merchant_reports_v1alpha/test_report_service.py +++ b/packages/google-shopping-merchant-reports/tests/unit/gapic/merchant_reports_v1alpha/test_report_service.py @@ -1694,6 +1694,9 @@ def test_search_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reports.ReportRow) for i in results) @@ -1782,6 +1785,8 @@ async def test_search_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2076,6 +2081,9 @@ def test_search_rest_pager(transport: str = "rest"): pager = client.search(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reports.ReportRow) for i in results) diff --git a/packages/google-shopping-merchant-reports/tests/unit/gapic/merchant_reports_v1beta/test_report_service.py b/packages/google-shopping-merchant-reports/tests/unit/gapic/merchant_reports_v1beta/test_report_service.py index 808ddd9acce6..b1b0bc5c0196 100644 --- a/packages/google-shopping-merchant-reports/tests/unit/gapic/merchant_reports_v1beta/test_report_service.py +++ b/packages/google-shopping-merchant-reports/tests/unit/gapic/merchant_reports_v1beta/test_report_service.py @@ -1694,6 +1694,9 @@ def test_search_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reports.ReportRow) for i in results) @@ -1782,6 +1785,8 @@ async def test_search_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -2076,6 +2081,9 @@ def test_search_rest_pager(transport: str = "rest"): pager = client.search(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, reports.ReportRow) for i in results) diff --git a/packages/google-shopping-merchant-reviews/noxfile.py b/packages/google-shopping-merchant-reviews/noxfile.py index 676575644598..11938d0615aa 100644 --- a/packages/google-shopping-merchant-reviews/noxfile.py +++ b/packages/google-shopping-merchant-reviews/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-merchant-reviews/testing/constraints-3.15.txt b/packages/google-shopping-merchant-reviews/testing/constraints-3.15.txt new file mode 100644 index 000000000000..72a0563100f5 --- /dev/null +++ b/packages/google-shopping-merchant-reviews/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 +google-shopping-type>=1 diff --git a/packages/google-shopping-merchant-reviews/tests/unit/gapic/merchant_reviews_v1beta/test_merchant_reviews_service.py b/packages/google-shopping-merchant-reviews/tests/unit/gapic/merchant_reviews_v1beta/test_merchant_reviews_service.py index 04b456864da3..066c15a95091 100644 --- a/packages/google-shopping-merchant-reviews/tests/unit/gapic/merchant_reviews_v1beta/test_merchant_reviews_service.py +++ b/packages/google-shopping-merchant-reviews/tests/unit/gapic/merchant_reviews_v1beta/test_merchant_reviews_service.py @@ -2142,6 +2142,9 @@ def test_list_merchant_reviews_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, merchantreviews.MerchantReview) for i in results) @@ -2234,6 +2237,8 @@ async def test_list_merchant_reviews_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3325,6 +3330,9 @@ def test_list_merchant_reviews_rest_pager(transport: str = "rest"): pager = client.list_merchant_reviews(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, merchantreviews.MerchantReview) for i in results) diff --git a/packages/google-shopping-merchant-reviews/tests/unit/gapic/merchant_reviews_v1beta/test_product_reviews_service.py b/packages/google-shopping-merchant-reviews/tests/unit/gapic/merchant_reviews_v1beta/test_product_reviews_service.py index 2681fb13859f..8e789a262919 100644 --- a/packages/google-shopping-merchant-reviews/tests/unit/gapic/merchant_reviews_v1beta/test_product_reviews_service.py +++ b/packages/google-shopping-merchant-reviews/tests/unit/gapic/merchant_reviews_v1beta/test_product_reviews_service.py @@ -2137,6 +2137,9 @@ def test_list_product_reviews_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, productreviews.ProductReview) for i in results) @@ -2229,6 +2232,8 @@ async def test_list_product_reviews_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3319,6 +3324,9 @@ def test_list_product_reviews_rest_pager(transport: str = "rest"): pager = client.list_product_reviews(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, productreviews.ProductReview) for i in results) diff --git a/packages/google-shopping-type/noxfile.py b/packages/google-shopping-type/noxfile.py index ca47d4a3725e..4fd6c195e752 100644 --- a/packages/google-shopping-type/noxfile.py +++ b/packages/google-shopping-type/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "google", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/google-shopping-type/testing/constraints-3.15.txt b/packages/google-shopping-type/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/google-shopping-type/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/grafeas/noxfile.py b/packages/grafeas/noxfile.py index d0d5199c2bd5..a8bff38403ac 100644 --- a/packages/grafeas/noxfile.py +++ b/packages/grafeas/noxfile.py @@ -36,16 +36,24 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() +# Path to the centralized mypy configuration file at the repository root. +# Search upwards to support running nox from both monorepo packages and integration test goldens. +MYPY_CONFIG_FILE = next( + ( + str(p / "mypy.ini") + for p in CURRENT_DIRECTORY.parents + if (p / "mypy.ini").exists() + ), + str(CURRENT_DIRECTORY.parent.parent / "mypy.ini"), +) if (CURRENT_DIRECTORY / "testing").exists(): LOWER_BOUND_CONSTRAINTS_FILE = ( @@ -107,6 +115,7 @@ def mypy(session): session.install(".") session.run( "mypy", + f"--config-file={MYPY_CONFIG_FILE}", "-p", "grafeas", "--check-untyped-defs", @@ -566,7 +575,7 @@ def prerelease_deps(session, protobuf_implementation): ) -@nox.session(python=DEFAULT_PYTHON_VERSION) +@nox.session(python=PREVIEW_PYTHON_VERSION) @nox.parametrize( "protobuf_implementation", ["python", "upb"], diff --git a/packages/grafeas/testing/constraints-3.15.txt b/packages/grafeas/testing/constraints-3.15.txt new file mode 100644 index 000000000000..6bd7e1f5b03d --- /dev/null +++ b/packages/grafeas/testing/constraints-3.15.txt @@ -0,0 +1,12 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +google-api-core>=2 +google-auth>=2 +grpcio>=1 +proto-plus>=1 +protobuf>=7 diff --git a/packages/grafeas/tests/unit/gapic/grafeas_v1/test_grafeas.py b/packages/grafeas/tests/unit/gapic/grafeas_v1/test_grafeas.py index 60bb3291db5e..18314c39548e 100644 --- a/packages/grafeas/tests/unit/gapic/grafeas_v1/test_grafeas.py +++ b/packages/grafeas/tests/unit/gapic/grafeas_v1/test_grafeas.py @@ -859,6 +859,9 @@ def test_list_occurrences_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, grafeas.Occurrence) for i in results) @@ -947,6 +950,8 @@ async def test_list_occurrences_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -3488,6 +3493,9 @@ def test_list_notes_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, grafeas.Note) for i in results) @@ -3576,6 +3584,8 @@ async def test_list_notes_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5411,6 +5421,9 @@ def test_list_note_occurrences_pager(transport_name: str = "grpc"): assert pager._retry == retry assert pager._timeout == timeout + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, grafeas.Occurrence) for i in results) @@ -5503,6 +5516,8 @@ async def test_list_note_occurrences_async_pager(): request={}, ) assert async_pager.next_page_token == "abc" + assert str(async_pager).startswith(f"{async_pager.__class__.__name__}<") + responses = [] async for response in async_pager: # pragma: no branch responses.append(response) @@ -5983,6 +5998,9 @@ def test_list_occurrences_rest_pager(transport: str = "rest"): pager = client.list_occurrences(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, grafeas.Occurrence) for i in results) @@ -7343,6 +7361,9 @@ def test_list_notes_rest_pager(transport: str = "rest"): pager = client.list_notes(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, grafeas.Note) for i in results) @@ -8360,6 +8381,9 @@ def test_list_note_occurrences_rest_pager(transport: str = "rest"): pager = client.list_note_occurrences(request=sample_request) + assert pager.next_page_token == "abc" + assert str(pager).startswith(f"{pager.__class__.__name__}<") + results = list(pager) assert len(results) == 6 assert all(isinstance(i, grafeas.Occurrence) for i in results) From 89a23191e6d01b37690e84980457f38073412973 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 17:57:08 +0000 Subject: [PATCH 03/32] chore: add 3.15 to remaining libraries; add 3.15 testing --- .github/workflows/unittest.yml | 2 +- .../bigtable-integration.yaml | 1 + .../client-post-processing/spanner-integration.yaml | 1 + packages/bigframes/noxfile.py | 2 +- packages/bigquery-magics/noxfile.py | 1 + .../bigquery-magics/testing/constraints-3.15.txt | 0 packages/db-dtypes/noxfile.py | 1 + packages/db-dtypes/testing/constraints-3.15.txt | 0 packages/django-google-spanner/noxfile.py | 1 + .../testing/constraints-3.15.txt | 0 packages/gcp-sphinx-docfx-yaml/noxfile.py | 4 ++-- packages/google-api-core/noxfile.py | 7 +++---- .../google-api-core/testing/constraints-3.15.txt | 0 packages/google-auth-httplib2/noxfile.py | 1 + .../testing/constraints-3.15.txt | 0 packages/google-auth-oauthlib/noxfile.py | 1 + .../testing/constraints-3.15.txt | 0 packages/google-auth/noxfile.py | 6 ++---- packages/google-auth/testing/constraints-3.15.txt | 0 .../google-cloud-access-context-manager/noxfile.py | 1 + .../testing/constraints-3.15.txt | 0 packages/google-cloud-audit-log/noxfile.py | 1 + .../testing/constraints-3.15.txt | 0 packages/google-cloud-bigquery/noxfile.py | 2 +- .../testing/constraints-3.15.txt | 0 packages/google-cloud-bigtable/noxfile.py | 1 + packages/google-cloud-core/noxfile.py | 1 + .../google-cloud-core/testing/constraints-3.15.txt | 0 packages/google-cloud-dns/noxfile.py | 1 + .../google-cloud-dns/testing/constraints-3.15.txt | 0 packages/google-cloud-documentai-toolbox/noxfile.py | 1 + .../testing/constraints-3.15.txt | 13 +++++++++++++ packages/google-cloud-ndb/noxfile.py | 2 +- .../google-cloud-ndb/testing/constraints-3.15.txt | 8 ++++++++ packages/google-cloud-runtimeconfig/noxfile.py | 1 + .../testing/constraints-3.15.txt | 0 .../google-cloud-spanner-dbapi-driver/noxfile.py | 6 ++---- .../testing/constraints-3.15.txt | 4 ++++ packages/google-cloud-spanner/noxfile.py | 1 + packages/google-cloud-testutils/noxfile.py | 2 +- .../testing/constraints-3.15.txt | 0 packages/google-crc32c/noxfile.py | 2 +- packages/google-resumable-media/noxfile.py | 2 +- .../testing/constraints-3.15.txt | 0 packages/googleapis-common-protos/noxfile.py | 1 + .../testing/constraints-3.15.txt | 0 packages/grpc-google-iam-v1/noxfile.py | 1 + .../grpc-google-iam-v1/testing/constraints-3.15.txt | 0 packages/pandas-gbq/noxfile.py | 1 + packages/pandas-gbq/testing/constraints-3.15.txt | 0 packages/proto-plus/noxfile.py | 1 + packages/proto-plus/testing/constraints-3.15.txt | 0 packages/sqlalchemy-bigquery/noxfile.py | 1 + .../testing/constraints-3.15.txt | 0 packages/sqlalchemy-spanner/noxfile.py | 2 +- 55 files changed, 62 insertions(+), 22 deletions(-) create mode 100644 packages/bigquery-magics/testing/constraints-3.15.txt create mode 100644 packages/db-dtypes/testing/constraints-3.15.txt create mode 100644 packages/django-google-spanner/testing/constraints-3.15.txt create mode 100644 packages/google-api-core/testing/constraints-3.15.txt create mode 100644 packages/google-auth-httplib2/testing/constraints-3.15.txt create mode 100644 packages/google-auth-oauthlib/testing/constraints-3.15.txt create mode 100644 packages/google-auth/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-access-context-manager/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-audit-log/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-bigquery/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-core/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-dns/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-documentai-toolbox/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-ndb/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-runtimeconfig/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-spanner-dbapi-driver/testing/constraints-3.15.txt create mode 100644 packages/google-cloud-testutils/testing/constraints-3.15.txt create mode 100644 packages/google-resumable-media/testing/constraints-3.15.txt create mode 100644 packages/googleapis-common-protos/testing/constraints-3.15.txt create mode 100644 packages/grpc-google-iam-v1/testing/constraints-3.15.txt create mode 100644 packages/pandas-gbq/testing/constraints-3.15.txt create mode 100644 packages/proto-plus/testing/constraints-3.15.txt create mode 100644 packages/sqlalchemy-bigquery/testing/constraints-3.15.txt diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index f54c3fa446d2..82f1e98337f2 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -18,7 +18,7 @@ jobs: strategy: fail-fast: true matrix: - python: ['3.9', '3.10', "3.11", "3.12", "3.13", "3.14"] + python: ['3.9', '3.10', "3.11", "3.12", "3.13", "3.14", "3.15"] steps: - name: Checkout uses: actions/checkout@v6 diff --git a/.librarian/generator-input/client-post-processing/bigtable-integration.yaml b/.librarian/generator-input/client-post-processing/bigtable-integration.yaml index fb373802cddc..31185e5b7cc8 100644 --- a/.librarian/generator-input/client-post-processing/bigtable-integration.yaml +++ b/.librarian/generator-input/client-post-processing/bigtable-integration.yaml @@ -385,6 +385,7 @@ replacements: "3.12", "3.13", "3.14", + "3.15", ] UNIT_TEST_STANDARD_DEPENDENCIES = [ diff --git a/.librarian/generator-input/client-post-processing/spanner-integration.yaml b/.librarian/generator-input/client-post-processing/spanner-integration.yaml index f4ae29dbf851..f9fa87537aa6 100644 --- a/.librarian/generator-input/client-post-processing/spanner-integration.yaml +++ b/.librarian/generator-input/client-post-processing/spanner-integration.yaml @@ -649,6 +649,7 @@ replacements: "3.12", "3.13", "3.14", + "3.15", ] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", diff --git a/packages/bigframes/noxfile.py b/packages/bigframes/noxfile.py index 0a33264aa8ea..101060deac4f 100644 --- a/packages/bigframes/noxfile.py +++ b/packages/bigframes/noxfile.py @@ -60,7 +60,7 @@ DEFAULT_PYTHON_VERSION = "3.14" -ALL_PYTHON = ["3.10", "3.11", "3.12", "3.13", "3.14"] +ALL_PYTHON = ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", PYTEST_VERSION, diff --git a/packages/bigquery-magics/noxfile.py b/packages/bigquery-magics/noxfile.py index f275406b6905..da5248f01a58 100644 --- a/packages/bigquery-magics/noxfile.py +++ b/packages/bigquery-magics/noxfile.py @@ -41,6 +41,7 @@ "3.12", "3.13", "3.14", + "3.15", ] UNIT_TEST_STANDARD_DEPENDENCIES = [ diff --git a/packages/bigquery-magics/testing/constraints-3.15.txt b/packages/bigquery-magics/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/db-dtypes/noxfile.py b/packages/db-dtypes/noxfile.py index b80b1df6832a..40deb23dc633 100644 --- a/packages/db-dtypes/noxfile.py +++ b/packages/db-dtypes/noxfile.py @@ -42,6 +42,7 @@ "3.12", "3.13", "3.14", + "3.15", ] UNIT_TEST_STANDARD_DEPENDENCIES = [ diff --git a/packages/db-dtypes/testing/constraints-3.15.txt b/packages/db-dtypes/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/django-google-spanner/noxfile.py b/packages/django-google-spanner/noxfile.py index 22c4c36d4cbb..420a52886de9 100644 --- a/packages/django-google-spanner/noxfile.py +++ b/packages/django-google-spanner/noxfile.py @@ -34,6 +34,7 @@ "3.12", "3.13", "3.14", + "3.15", ] ALL_PYTHON = list(UNIT_TEST_PYTHON_VERSIONS) diff --git a/packages/django-google-spanner/testing/constraints-3.15.txt b/packages/django-google-spanner/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/gcp-sphinx-docfx-yaml/noxfile.py b/packages/gcp-sphinx-docfx-yaml/noxfile.py index ba5658c0e24f..3b9e7cb70cae 100644 --- a/packages/gcp-sphinx-docfx-yaml/noxfile.py +++ b/packages/gcp-sphinx-docfx-yaml/noxfile.py @@ -17,7 +17,7 @@ import nox DEFAULT_PYTHON_VERSION = "3.14" -UNIT_TEST_PYTHON_VERSIONS = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] +UNIT_TEST_PYTHON_VERSIONS = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] RUFF_VERSION = "ruff==0.14.14" ALL_PYTHON = list(UNIT_TEST_PYTHON_VERSIONS) @@ -138,7 +138,7 @@ def unit(session): # Re-enable 3.8, 3.9, 3.11, 3.12, and 3.13 after environment verification. # TODO(https://github.com/googleapis/google-cloud-python/issues/16176): # Track 3.14 compatibility as upstream dependencies stabilize. - _skip_python_session(session, ["3.7", "3.8", "3.9", "3.11", "3.12", "3.13", "3.14"]) + _skip_python_session(session, ["3.7", "3.8", "3.9", "3.11", "3.12", "3.13", "3.14", "3.15"]) session.install("-r", "requirements.txt") session.install("pytest", "pytest-cov") session.run( diff --git a/packages/google-api-core/noxfile.py b/packages/google-api-core/noxfile.py index 27b9b9125a0c..388394f6875c 100644 --- a/packages/google-api-core/noxfile.py +++ b/packages/google-api-core/noxfile.py @@ -34,8 +34,7 @@ # Black and flake8 clash on the syntax for ignoring flake8's F401 in this file. BLACK_EXCLUDES = ["--exclude", "^/google/api_core/operations_v1/__init__.py"] -ALL_PYTHON = ["3.10", "3.11", "3.12", "3.13", "3.14"] -SUPPORTED_PYTHON_VERSIONS = ["3.10", "3.11", "3.12", "3.13", "3.14"] +ALL_PYTHON = ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] DEFAULT_PYTHON_VERSION = "3.14" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() @@ -213,14 +212,14 @@ def default( if prerelease: install_prerelease_dependencies( session, - f"{constraints_dir}/constraints-{constraints_type}{SUPPORTED_PYTHON_VERSIONS[0]}.txt", + f"{constraints_dir}/constraints-{constraints_type}{ALL_PYTHON[0]}.txt", ) # This *must* be the last install command to get the package from source. session.install("-e", lib_with_extras, "--no-deps") elif install_deps_from_source: install_core_deps_dependencies( session, - f"{constraints_dir}/constraints-{constraints_type}{SUPPORTED_PYTHON_VERSIONS[0]}.txt", + f"{constraints_dir}/constraints-{constraints_type}{ALL_PYTHON[0]}.txt", ) # This *must* be the last install command to get the package from source. session.install("-e", lib_with_extras, "--no-deps") diff --git a/packages/google-api-core/testing/constraints-3.15.txt b/packages/google-api-core/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/google-auth-httplib2/noxfile.py b/packages/google-auth-httplib2/noxfile.py index 67b1bd420cc5..0e1481b391b0 100644 --- a/packages/google-auth-httplib2/noxfile.py +++ b/packages/google-auth-httplib2/noxfile.py @@ -39,6 +39,7 @@ "3.12", "3.13", "3.14", + "3.15", ] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", diff --git a/packages/google-auth-httplib2/testing/constraints-3.15.txt b/packages/google-auth-httplib2/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/google-auth-oauthlib/noxfile.py b/packages/google-auth-oauthlib/noxfile.py index a028eb1f1900..1025b29c5276 100644 --- a/packages/google-auth-oauthlib/noxfile.py +++ b/packages/google-auth-oauthlib/noxfile.py @@ -41,6 +41,7 @@ "3.12", "3.13", "3.14", + "3.15", ] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", diff --git a/packages/google-auth-oauthlib/testing/constraints-3.15.txt b/packages/google-auth-oauthlib/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/google-auth/noxfile.py b/packages/google-auth/noxfile.py index 5962f96bf094..b028683d313d 100644 --- a/packages/google-auth/noxfile.py +++ b/packages/google-auth/noxfile.py @@ -35,10 +35,7 @@ DEFAULT_PYTHON_VERSION = "3.14" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" UNIT_TEST_PYTHON_VERSIONS = [ "3.10", @@ -46,6 +43,7 @@ "3.12", "3.13", "3.14", + "3.15", ] ALL_PYTHON = UNIT_TEST_PYTHON_VERSIONS.copy() diff --git a/packages/google-auth/testing/constraints-3.15.txt b/packages/google-auth/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/google-cloud-access-context-manager/noxfile.py b/packages/google-cloud-access-context-manager/noxfile.py index b6ae8c821dca..5dd955fed16e 100644 --- a/packages/google-cloud-access-context-manager/noxfile.py +++ b/packages/google-cloud-access-context-manager/noxfile.py @@ -38,6 +38,7 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = UNIT_TEST_PYTHON_VERSIONS[-1] diff --git a/packages/google-cloud-access-context-manager/testing/constraints-3.15.txt b/packages/google-cloud-access-context-manager/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/google-cloud-audit-log/noxfile.py b/packages/google-cloud-audit-log/noxfile.py index 4724255759ff..011c315ae73d 100644 --- a/packages/google-cloud-audit-log/noxfile.py +++ b/packages/google-cloud-audit-log/noxfile.py @@ -38,6 +38,7 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = UNIT_TEST_PYTHON_VERSIONS[-1] diff --git a/packages/google-cloud-audit-log/testing/constraints-3.15.txt b/packages/google-cloud-audit-log/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/google-cloud-bigquery/noxfile.py b/packages/google-cloud-bigquery/noxfile.py index cfe3b60e0c51..cfbdd0a25c3a 100644 --- a/packages/google-cloud-bigquery/noxfile.py +++ b/packages/google-cloud-bigquery/noxfile.py @@ -38,7 +38,7 @@ ) DEFAULT_PYTHON_VERSION = "3.14" -ALL_PYTHON = ["3.10", "3.11", "3.12", "3.13", "3.14"] +ALL_PYTHON = ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] UNIT_TEST_PYTHON_VERSIONS = ALL_PYTHON CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() diff --git a/packages/google-cloud-bigquery/testing/constraints-3.15.txt b/packages/google-cloud-bigquery/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/google-cloud-bigtable/noxfile.py b/packages/google-cloud-bigtable/noxfile.py index e6ef8c1e9911..eea25f32bc92 100644 --- a/packages/google-cloud-bigtable/noxfile.py +++ b/packages/google-cloud-bigtable/noxfile.py @@ -33,6 +33,7 @@ "3.12", "3.13", "3.14", + "3.15", ] UNIT_TEST_STANDARD_DEPENDENCIES = [ diff --git a/packages/google-cloud-core/noxfile.py b/packages/google-cloud-core/noxfile.py index 2de40dfb9234..4cd90abe6733 100644 --- a/packages/google-cloud-core/noxfile.py +++ b/packages/google-cloud-core/noxfile.py @@ -31,6 +31,7 @@ "3.12", "3.13", "3.14", + "3.15", ] CURRENT_DIRECTORY = os.path.abspath(os.path.dirname(__file__)) diff --git a/packages/google-cloud-core/testing/constraints-3.15.txt b/packages/google-cloud-core/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/google-cloud-dns/noxfile.py b/packages/google-cloud-dns/noxfile.py index bb38d1e08a91..5903372a45b2 100644 --- a/packages/google-cloud-dns/noxfile.py +++ b/packages/google-cloud-dns/noxfile.py @@ -41,6 +41,7 @@ "3.12", "3.13", "3.14", + "3.15", ] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", diff --git a/packages/google-cloud-dns/testing/constraints-3.15.txt b/packages/google-cloud-dns/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/google-cloud-documentai-toolbox/noxfile.py b/packages/google-cloud-documentai-toolbox/noxfile.py index db70716c5d6b..7c221a194292 100644 --- a/packages/google-cloud-documentai-toolbox/noxfile.py +++ b/packages/google-cloud-documentai-toolbox/noxfile.py @@ -41,6 +41,7 @@ "3.12", "3.13", "3.14", + "3.15", ] UNIT_TEST_STANDARD_DEPENDENCIES = [ diff --git a/packages/google-cloud-documentai-toolbox/testing/constraints-3.15.txt b/packages/google-cloud-documentai-toolbox/testing/constraints-3.15.txt new file mode 100644 index 000000000000..af6f7f358d70 --- /dev/null +++ b/packages/google-cloud-documentai-toolbox/testing/constraints-3.15.txt @@ -0,0 +1,13 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +google-api-core +pandas +proto-plus +grpc-google-iam-v1 +google-cloud-bigquery +google-cloud-documentai +google-cloud-storage +numpy +pikepdf +numba>=0.63.0b1 diff --git a/packages/google-cloud-ndb/noxfile.py b/packages/google-cloud-ndb/noxfile.py index 47c4a4359e77..10dcc6a9fce5 100644 --- a/packages/google-cloud-ndb/noxfile.py +++ b/packages/google-cloud-ndb/noxfile.py @@ -29,7 +29,7 @@ LOCAL_DEPS = ("google-api-core", "google-cloud-core") NOX_DIR = os.path.abspath(os.path.dirname(__file__)) DEFAULT_INTERPRETER = "3.14" -ALL_INTERPRETERS = ("3.10", "3.11", "3.12", "3.13", "3.14") +ALL_INTERPRETERS = ("3.10", "3.11", "3.12", "3.13", "3.14", "3.15") CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() BLACK_VERSION = "black[jupyter]==23.7.0" diff --git a/packages/google-cloud-ndb/testing/constraints-3.15.txt b/packages/google-cloud-ndb/testing/constraints-3.15.txt new file mode 100644 index 000000000000..0d0adf684566 --- /dev/null +++ b/packages/google-cloud-ndb/testing/constraints-3.15.txt @@ -0,0 +1,8 @@ +# We use the constraints file for the latest Python version +# (currently this file) to check that the latest +# major versions of dependencies are supported in setup.py. +# List all library dependencies and extras in this file. +# Require the latest major version be installed for each dependency. +# e.g., if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", +# Then this file should have google-cloud-foo>=1 +redis>=7 diff --git a/packages/google-cloud-runtimeconfig/noxfile.py b/packages/google-cloud-runtimeconfig/noxfile.py index 42e77572607e..d5bfecbb7363 100644 --- a/packages/google-cloud-runtimeconfig/noxfile.py +++ b/packages/google-cloud-runtimeconfig/noxfile.py @@ -41,6 +41,7 @@ "3.12", "3.13", "3.14", + "3.15", ] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", diff --git a/packages/google-cloud-runtimeconfig/testing/constraints-3.15.txt b/packages/google-cloud-runtimeconfig/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/google-cloud-spanner-dbapi-driver/noxfile.py b/packages/google-cloud-spanner-dbapi-driver/noxfile.py index 2fedee7ee5af..66c8f1da3831 100644 --- a/packages/google-cloud-spanner-dbapi-driver/noxfile.py +++ b/packages/google-cloud-spanner-dbapi-driver/noxfile.py @@ -42,15 +42,13 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = "3.14" DOCS_PYTHON_VERSION = "3.10" -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2450): -# Switch this to Python 3.15 alpha1 -# https://peps.python.org/pep-0790/ -PREVIEW_PYTHON_VERSION = "3.14" +PREVIEW_PYTHON_VERSION = "3.15" CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() diff --git a/packages/google-cloud-spanner-dbapi-driver/testing/constraints-3.15.txt b/packages/google-cloud-spanner-dbapi-driver/testing/constraints-3.15.txt new file mode 100644 index 000000000000..2d4c01d5696a --- /dev/null +++ b/packages/google-cloud-spanner-dbapi-driver/testing/constraints-3.15.txt @@ -0,0 +1,4 @@ +# -*- coding: utf-8 -*- +# This constraints file is required for unit tests. +# List all library dependencies and extras in this file. +spannerlib-python diff --git a/packages/google-cloud-spanner/noxfile.py b/packages/google-cloud-spanner/noxfile.py index fa74716b8142..0eb8acebf687 100644 --- a/packages/google-cloud-spanner/noxfile.py +++ b/packages/google-cloud-spanner/noxfile.py @@ -36,6 +36,7 @@ "3.12", "3.13", "3.14", + "3.15", ] UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", diff --git a/packages/google-cloud-testutils/noxfile.py b/packages/google-cloud-testutils/noxfile.py index 0e86a298190e..e527f660d750 100644 --- a/packages/google-cloud-testutils/noxfile.py +++ b/packages/google-cloud-testutils/noxfile.py @@ -33,7 +33,7 @@ # Error if a python version is missing nox.options.error_on_missing_interpreters = True -ALL_PYTHON = ["3.10", "3.11", "3.12", "3.13", "3.14"] +ALL_PYTHON = ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] DEFAULT_PYTHON_VERSION = "3.14" BLACK_VERSION = "black==23.7.0" RUFF_VERSION = "ruff==0.14.14" diff --git a/packages/google-cloud-testutils/testing/constraints-3.15.txt b/packages/google-cloud-testutils/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/google-crc32c/noxfile.py b/packages/google-crc32c/noxfile.py index b44c502ccd0c..2a268734c5b5 100644 --- a/packages/google-crc32c/noxfile.py +++ b/packages/google-crc32c/noxfile.py @@ -25,7 +25,7 @@ # Constants DEFAULT_PYTHON_VERSION = "3.14" -UNIT_TEST_PYTHON_VERSIONS = ["3.10", "3.11", "3.12", "3.13", "3.14"] +UNIT_TEST_PYTHON_VERSIONS = ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] ALL_PYTHON = list(UNIT_TEST_PYTHON_VERSIONS) FLAKE8_VERSION = "flake8==6.1.0" diff --git a/packages/google-resumable-media/noxfile.py b/packages/google-resumable-media/noxfile.py index a1c1ae199709..d18f712acc6d 100644 --- a/packages/google-resumable-media/noxfile.py +++ b/packages/google-resumable-media/noxfile.py @@ -26,7 +26,7 @@ RUFF_VERSION = "ruff==0.14.14" DEFAULT_PYTHON_VERSION = "3.14" -UNIT_TEST_PYTHON_VERSIONS = ["3.10", "3.11", "3.12", "3.13", "3.14"] +UNIT_TEST_PYTHON_VERSIONS = ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] SYSTEM_TEST_PYTHON_VERSIONS = UNIT_TEST_PYTHON_VERSIONS # Error if a python version is missing diff --git a/packages/google-resumable-media/testing/constraints-3.15.txt b/packages/google-resumable-media/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/googleapis-common-protos/noxfile.py b/packages/googleapis-common-protos/noxfile.py index ce20cdcfcad8..fd4bfe03aed7 100644 --- a/packages/googleapis-common-protos/noxfile.py +++ b/packages/googleapis-common-protos/noxfile.py @@ -38,6 +38,7 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = UNIT_TEST_PYTHON_VERSIONS[-1] diff --git a/packages/googleapis-common-protos/testing/constraints-3.15.txt b/packages/googleapis-common-protos/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/grpc-google-iam-v1/noxfile.py b/packages/grpc-google-iam-v1/noxfile.py index 6d0703ed100b..23e86d5b946d 100644 --- a/packages/grpc-google-iam-v1/noxfile.py +++ b/packages/grpc-google-iam-v1/noxfile.py @@ -38,6 +38,7 @@ "3.12", "3.13", "3.14", + "3.15", ] DEFAULT_PYTHON_VERSION = UNIT_TEST_PYTHON_VERSIONS[-1] diff --git a/packages/grpc-google-iam-v1/testing/constraints-3.15.txt b/packages/grpc-google-iam-v1/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/pandas-gbq/noxfile.py b/packages/pandas-gbq/noxfile.py index 8e58d09628bc..6a4487f938fa 100644 --- a/packages/pandas-gbq/noxfile.py +++ b/packages/pandas-gbq/noxfile.py @@ -41,6 +41,7 @@ "3.12", "3.13", "3.14", + "3.15", ] UNIT_TEST_STANDARD_DEPENDENCIES = [ diff --git a/packages/pandas-gbq/testing/constraints-3.15.txt b/packages/pandas-gbq/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/proto-plus/noxfile.py b/packages/proto-plus/noxfile.py index 16561f17154c..1043e08376c5 100644 --- a/packages/proto-plus/noxfile.py +++ b/packages/proto-plus/noxfile.py @@ -36,6 +36,7 @@ "3.12", "3.13", "3.14", + "3.15", ] # Error if a python version is missing diff --git a/packages/proto-plus/testing/constraints-3.15.txt b/packages/proto-plus/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/sqlalchemy-bigquery/noxfile.py b/packages/sqlalchemy-bigquery/noxfile.py index 2e171cc31444..4e669f4f51ec 100644 --- a/packages/sqlalchemy-bigquery/noxfile.py +++ b/packages/sqlalchemy-bigquery/noxfile.py @@ -50,6 +50,7 @@ "3.12", "3.13", "3.14", + "3.15", ] ALL_PYTHON = list(UNIT_TEST_PYTHON_VERSIONS) UNIT_TEST_STANDARD_DEPENDENCIES = [ diff --git a/packages/sqlalchemy-bigquery/testing/constraints-3.15.txt b/packages/sqlalchemy-bigquery/testing/constraints-3.15.txt new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/packages/sqlalchemy-spanner/noxfile.py b/packages/sqlalchemy-spanner/noxfile.py index 187d4e7e8924..b5c82b3f225a 100644 --- a/packages/sqlalchemy-spanner/noxfile.py +++ b/packages/sqlalchemy-spanner/noxfile.py @@ -124,7 +124,7 @@ class = StreamHandler "sqlalchemy>=2.0", ] -UNIT_TEST_PYTHON_VERSIONS = ["3.10", "3.11", "3.12", "3.13", "3.14"] +UNIT_TEST_PYTHON_VERSIONS = ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] ALL_PYTHON = list(UNIT_TEST_PYTHON_VERSIONS) SYSTEM_TEST_PYTHON_VERSIONS = ["3.12"] SYSTEM_COMPLIANCE_MIGRATION_TEST_PYTHON_VERSIONS = ["3.12", "3.14"] From 012140861651065d2274b58d8c2f47c7d7d5ed86 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 18:03:02 +0000 Subject: [PATCH 04/32] chore: allow prerelease testing --- .github/workflows/unittest.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 82f1e98337f2..52358d7050b9 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -31,6 +31,11 @@ jobs: uses: actions/setup-python@v6 with: python-version: ${{ matrix.python }} + allow-prereleases: true + # Caches compiled wheels locally to prevent building heavy libraries + # such as grpcio, which we build from scratch on every run for Python 3.15+. + # Follow https://github.com/grpc/grpc/issues/41010 for updates. + cache: 'pip' - name: Install nox run: | python -m pip install --upgrade setuptools pip wheel From 22683317939a98bc715d554f371334947364c040 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 18:06:56 +0000 Subject: [PATCH 05/32] address review feedback --- packages/google-cloud-access-context-manager/noxfile.py | 2 +- packages/google-cloud-audit-log/noxfile.py | 2 +- packages/googleapis-common-protos/noxfile.py | 2 +- packages/grpc-google-iam-v1/noxfile.py | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/google-cloud-access-context-manager/noxfile.py b/packages/google-cloud-access-context-manager/noxfile.py index 5dd955fed16e..3b495e440d9c 100644 --- a/packages/google-cloud-access-context-manager/noxfile.py +++ b/packages/google-cloud-access-context-manager/noxfile.py @@ -41,7 +41,7 @@ "3.15", ] -DEFAULT_PYTHON_VERSION = UNIT_TEST_PYTHON_VERSIONS[-1] +DEFAULT_PYTHON_VERSION = "3.14" UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", diff --git a/packages/google-cloud-audit-log/noxfile.py b/packages/google-cloud-audit-log/noxfile.py index 011c315ae73d..b26bf493e336 100644 --- a/packages/google-cloud-audit-log/noxfile.py +++ b/packages/google-cloud-audit-log/noxfile.py @@ -41,7 +41,7 @@ "3.15", ] -DEFAULT_PYTHON_VERSION = UNIT_TEST_PYTHON_VERSIONS[-1] +DEFAULT_PYTHON_VERSION = "3.14" UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", diff --git a/packages/googleapis-common-protos/noxfile.py b/packages/googleapis-common-protos/noxfile.py index fd4bfe03aed7..8b624f2f959e 100644 --- a/packages/googleapis-common-protos/noxfile.py +++ b/packages/googleapis-common-protos/noxfile.py @@ -41,7 +41,7 @@ "3.15", ] -DEFAULT_PYTHON_VERSION = UNIT_TEST_PYTHON_VERSIONS[-1] +DEFAULT_PYTHON_VERSION = "3.14" UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", diff --git a/packages/grpc-google-iam-v1/noxfile.py b/packages/grpc-google-iam-v1/noxfile.py index 23e86d5b946d..d62a85e1bd72 100644 --- a/packages/grpc-google-iam-v1/noxfile.py +++ b/packages/grpc-google-iam-v1/noxfile.py @@ -41,7 +41,7 @@ "3.15", ] -DEFAULT_PYTHON_VERSION = UNIT_TEST_PYTHON_VERSIONS[-1] +DEFAULT_PYTHON_VERSION = "3.14" UNIT_TEST_STANDARD_DEPENDENCIES = [ "mock", From 8e4766d53f29e205bc8f528e91e0eeb7a8f8e8f3 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 18:07:26 +0000 Subject: [PATCH 06/32] chore: enable 3.15 testing --- ci/run_single_test.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ci/run_single_test.sh b/ci/run_single_test.sh index aa158c4d342c..d05b31e9aa34 100755 --- a/ci/run_single_test.sh +++ b/ci/run_single_test.sh @@ -99,6 +99,10 @@ case ${TEST_TYPE} in nox -s unit-3.14 retval=$? ;; + "3.15") + nox -s unit-3.15 + retval=$? + ;; *) echo "unsupported PY_VERSION" exit 1 From f48ddbf742785f296b876c84a379af4da0d00539 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 18:15:08 +0000 Subject: [PATCH 07/32] chore: attempt to speed up tests --- .github/workflows/unittest.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 52358d7050b9..b4adcc3b7fbc 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -36,6 +36,7 @@ jobs: # such as grpcio, which we build from scratch on every run for Python 3.15+. # Follow https://github.com/grpc/grpc/issues/41010 for updates. cache: 'pip' + cache-dependency-path: '**/constraints*.txt' - name: Install nox run: | python -m pip install --upgrade setuptools pip wheel From 3cd76c7d9b2efb42fed9f0a38da265e8c67e2f1b Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 18:25:16 +0000 Subject: [PATCH 08/32] chore: revert google-crc32c which has failing tests at head --- packages/google-crc32c/mypy.ini | 3 +++ packages/google-crc32c/noxfile.py | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 packages/google-crc32c/mypy.ini diff --git a/packages/google-crc32c/mypy.ini b/packages/google-crc32c/mypy.ini new file mode 100644 index 000000000000..569486a9ce60 --- /dev/null +++ b/packages/google-crc32c/mypy.ini @@ -0,0 +1,3 @@ +[mypy] +python_version = 3.10 +exclude = tests/unit/resources/ diff --git a/packages/google-crc32c/noxfile.py b/packages/google-crc32c/noxfile.py index 2a268734c5b5..b44c502ccd0c 100644 --- a/packages/google-crc32c/noxfile.py +++ b/packages/google-crc32c/noxfile.py @@ -25,7 +25,7 @@ # Constants DEFAULT_PYTHON_VERSION = "3.14" -UNIT_TEST_PYTHON_VERSIONS = ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] +UNIT_TEST_PYTHON_VERSIONS = ["3.10", "3.11", "3.12", "3.13", "3.14"] ALL_PYTHON = list(UNIT_TEST_PYTHON_VERSIONS) FLAKE8_VERSION = "flake8==6.1.0" From 8e74097c1c4b98aba39d9e09ce38453004b82828 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 19:25:45 +0000 Subject: [PATCH 09/32] lint --- packages/gcp-sphinx-docfx-yaml/noxfile.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/packages/gcp-sphinx-docfx-yaml/noxfile.py b/packages/gcp-sphinx-docfx-yaml/noxfile.py index 3b9e7cb70cae..4f49c8915167 100644 --- a/packages/gcp-sphinx-docfx-yaml/noxfile.py +++ b/packages/gcp-sphinx-docfx-yaml/noxfile.py @@ -17,7 +17,16 @@ import nox DEFAULT_PYTHON_VERSION = "3.14" -UNIT_TEST_PYTHON_VERSIONS = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] +UNIT_TEST_PYTHON_VERSIONS = [ + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", + "3.13", + "3.14", + "3.15", +] RUFF_VERSION = "ruff==0.14.14" ALL_PYTHON = list(UNIT_TEST_PYTHON_VERSIONS) @@ -138,7 +147,9 @@ def unit(session): # Re-enable 3.8, 3.9, 3.11, 3.12, and 3.13 after environment verification. # TODO(https://github.com/googleapis/google-cloud-python/issues/16176): # Track 3.14 compatibility as upstream dependencies stabilize. - _skip_python_session(session, ["3.7", "3.8", "3.9", "3.11", "3.12", "3.13", "3.14", "3.15"]) + _skip_python_session( + session, ["3.7", "3.8", "3.9", "3.11", "3.12", "3.13", "3.14", "3.15"] + ) session.install("-r", "requirements.txt") session.install("pytest", "pytest-cov") session.run( From 7174f0de30824f98cce5e5c5ab6551e8ab0655bb Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 19:37:17 +0000 Subject: [PATCH 10/32] chore: attempt to speed up tests --- .github/workflows/unittest.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index b4adcc3b7fbc..1d311ef600d6 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -36,7 +36,7 @@ jobs: # such as grpcio, which we build from scratch on every run for Python 3.15+. # Follow https://github.com/grpc/grpc/issues/41010 for updates. cache: 'pip' - cache-dependency-path: '**/constraints*.txt' + cache-dependency-path: 'packages/**/testing/constraints*.txt' - name: Install nox run: | python -m pip install --upgrade setuptools pip wheel From d92623c9db849adbee1bdcb387c3fad419aba92b Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 19:53:03 +0000 Subject: [PATCH 11/32] chore: attempt to speed up tests --- .github/workflows/unittest.yml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 1d311ef600d6..580e74d98684 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -32,11 +32,18 @@ jobs: with: python-version: ${{ matrix.python }} allow-prereleases: true + # Built-in caching for stable versions + cache: ${{ matrix.python != '3.15' && 'pip' || '' }} + cache-dependency-path: 'packages/**/testing/constraints*.txt' + - name: Cache Wheels (Python 3.15 Only) + if: matrix.python == '3.15' + uses: actions/cache@v4 + with: # Caches compiled wheels locally to prevent building heavy libraries # such as grpcio, which we build from scratch on every run for Python 3.15+. # Follow https://github.com/grpc/grpc/issues/41010 for updates. - cache: 'pip' - cache-dependency-path: 'packages/**/testing/constraints*.txt' + path: ~/.cache/pip + key: ${{ runner.os }}-pip-3.15-grpcio-v1-1.81.1 - name: Install nox run: | python -m pip install --upgrade setuptools pip wheel From 5fa6490943e34d017f7ac5648471350b6bf08a37 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 19:55:28 +0000 Subject: [PATCH 12/32] Set PYO3_USE_ABI3_FORWARD_COMPATIBILITY for libcst 3.15 compatibility --- .github/workflows/unittest.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 580e74d98684..ab4ee4b15b44 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -12,6 +12,13 @@ name: unittest permissions: contents: read +env: + # Workaround: Allows libcst to compile on Python 3.15+ while PyO3 catches up + # Can be removed once libcst releases a version with native Python 3.15 wheels + # Follow https://github.com/Instagram/LibCST/issues/1445 for updates. + PYO3_USE_ABI3_FORWARD_COMPATIBILITY: "1" + + jobs: unit: runs-on: ubuntu-22.04 From 354bfe8dfe1d28d7839b72eed07aa1696332e040 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 20:30:03 +0000 Subject: [PATCH 13/32] chore: revert 3.15 for bigframes --- packages/bigframes/noxfile.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/bigframes/noxfile.py b/packages/bigframes/noxfile.py index 101060deac4f..4f83431e4934 100644 --- a/packages/bigframes/noxfile.py +++ b/packages/bigframes/noxfile.py @@ -250,6 +250,8 @@ def install_unittest_dependencies(session, install_test_extra, *constraints): def run_unit(session, install_test_extra): """Run the unit test suite.""" + if session.python == "3.15": + session.skip("Wait until pyproj has 3.15 wheels") constraints_path = str( CURRENT_DIRECTORY / "testing" / f"constraints-{session.python}.txt" ) @@ -289,7 +291,7 @@ def unit(session, test_extra): unit_noextras(session) -@nox.session(python=ALL_PYTHON[-1]) +@nox.session(python=DEFAULT_PYTHON_VERSION) def unit_noextras(session): run_unit(session, install_test_extra=False) @@ -656,7 +658,7 @@ def prerelease(session: nox.sessions.Session, tests_path, extra_pytest_options=( ) -@nox.session(python=ALL_PYTHON[-1]) +@nox.session(python=DEFAULT_PYTHON_VERSION) def unit_prerelease(session: nox.sessions.Session): """Run the unit test suite with prerelease dependencies.""" prerelease(session, os.path.join("tests", "unit")) @@ -1040,7 +1042,7 @@ def core_deps_from_source(session, protobuf_implementation): ) -@nox.session(python=ALL_PYTHON[-1]) +@nox.session(python=DEFAULT_PYTHON_VERSION) def prerelease_deps(session): """Run all tests with prerelease versions of dependencies installed.""" # TODO(https://github.com/googleapis/google-cloud-python/issues/16014): From 06643a23aed5e4df9e45e222e0fedfcba8d6616c Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:03:38 +0000 Subject: [PATCH 14/32] attempt to speed up tests --- .github/workflows/unittest.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index ab4ee4b15b44..fa4deb300d60 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -42,6 +42,23 @@ jobs: # Built-in caching for stable versions cache: ${{ matrix.python != '3.15' && 'pip' || '' }} cache-dependency-path: 'packages/**/testing/constraints*.txt' + - name: Cache ccache directory + if: matrix.python == '3.15' + uses: actions/cache@v4 + with: + path: ~/.cache/ccache + # Use a stable key based on the OS and Python version so it updates smoothly + key: ${{ runner.os }}-ccache-${{ matrix.python }}-${{ github.run_id }} + restore-keys: | + ${{ runner.os }}-ccache-${{ matrix.python }}- + - name: Install and Setup ccache + if: matrix.python == '3.15' + run: | + sudo apt-get update && sudo apt-get install -y ccache + # Set explicitly for the ccache tool environment + echo "CCACHE_DIR=$HOME/.cache/ccache" >> $GITHUB_ENV + # Prepend to PATH properly for GitHub Actions + echo "/usr/lib/ccache" >> $GITHUB_PATH - name: Cache Wheels (Python 3.15 Only) if: matrix.python == '3.15' uses: actions/cache@v4 From 79930876f5562e260adafdd2075191b755f6bd8d Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:11:47 +0000 Subject: [PATCH 15/32] chore: attempt to speed up tests --- .github/workflows/unittest.yml | 39 ++++++---------------------------- 1 file changed, 7 insertions(+), 32 deletions(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index fa4deb300d60..e6d4a2b98038 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -39,39 +39,14 @@ jobs: with: python-version: ${{ matrix.python }} allow-prereleases: true - # Built-in caching for stable versions - cache: ${{ matrix.python != '3.15' && 'pip' || '' }} - cache-dependency-path: 'packages/**/testing/constraints*.txt' - - name: Cache ccache directory - if: matrix.python == '3.15' - uses: actions/cache@v4 + - name: Setup uv + uses: astral-sh/setup-uv@v5 with: - path: ~/.cache/ccache - # Use a stable key based on the OS and Python version so it updates smoothly - key: ${{ runner.os }}-ccache-${{ matrix.python }}-${{ github.run_id }} - restore-keys: | - ${{ runner.os }}-ccache-${{ matrix.python }}- - - name: Install and Setup ccache - if: matrix.python == '3.15' - run: | - sudo apt-get update && sudo apt-get install -y ccache - # Set explicitly for the ccache tool environment - echo "CCACHE_DIR=$HOME/.cache/ccache" >> $GITHUB_ENV - # Prepend to PATH properly for GitHub Actions - echo "/usr/lib/ccache" >> $GITHUB_PATH - - name: Cache Wheels (Python 3.15 Only) - if: matrix.python == '3.15' - uses: actions/cache@v4 - with: - # Caches compiled wheels locally to prevent building heavy libraries - # such as grpcio, which we build from scratch on every run for Python 3.15+. - # Follow https://github.com/grpc/grpc/issues/41010 for updates. - path: ~/.cache/pip - key: ${{ runner.os }}-pip-3.15-grpcio-v1-1.81.1 + enable-cache: true + cache-dependency-glob: 'packages/**/testing/constraints*.txt' - name: Install nox run: | - python -m pip install --upgrade setuptools pip wheel - python -m pip install nox + uv pip install --system nox nox-uv - name: Run unit tests env: COVERAGE_FILE: ${{ github.workspace }}/.coverage-${{ matrix.python }} @@ -94,14 +69,14 @@ jobs: - unit steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 # Use a fetch-depth of 2 to avoid error `fatal: origin/main...HEAD: no merge base` # See https://github.com/googleapis/google-cloud-python/issues/12013 # and https://github.com/actions/checkout#checkout-head. with: fetch-depth: 2 - name: Setup Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: "3.10" - name: Set number of files changes in packages directory From 3666bed75286742dad2a4984d4ebb4f7edc81aba Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:18:26 +0000 Subject: [PATCH 16/32] chore: attempt to speed up tests --- .github/workflows/unittest.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index e6d4a2b98038..a5bb94110e87 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -17,6 +17,8 @@ env: # Can be removed once libcst releases a version with native Python 3.15 wheels # Follow https://github.com/Instagram/LibCST/issues/1445 for updates. PYO3_USE_ABI3_FORWARD_COMPATIBILITY: "1" + # Use UV to speed up testing + VIRTUALENV_SEEDER: "uv" jobs: @@ -57,7 +59,7 @@ jobs: run: | ci/run_conditional_tests.sh - name: Upload coverage results - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v5 with: name: coverage-artifact-${{ matrix.python }} path: .coverage-${{ matrix.python }} From 4f12dc358a84cb9edf16c4930c340064aefe7754 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:21:46 +0000 Subject: [PATCH 17/32] chore: attempt to speed up tests --- .github/workflows/unittest.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index a5bb94110e87..5186cd4d5db5 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -56,6 +56,7 @@ jobs: TARGET_BRANCH: ${{ github.base_ref || github.event.merge_group.base_ref }} TEST_TYPE: unit PY_VERSION: ${{ matrix.python }} + NOX_VENV_BACKEND: ${{ matrix.python == '3.15' && 'venv' || '' }} run: | ci/run_conditional_tests.sh - name: Upload coverage results From 0bd66a3f7b1bb06eefe9d1eb05a55269ad517e17 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:27:41 +0000 Subject: [PATCH 18/32] chore: attempt to speed up tests --- .github/workflows/unittest.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 5186cd4d5db5..4c4a8e47bb31 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -18,7 +18,10 @@ env: # Follow https://github.com/Instagram/LibCST/issues/1445 for updates. PYO3_USE_ABI3_FORWARD_COMPATIBILITY: "1" # Use UV to speed up testing - VIRTUALENV_SEEDER: "uv" + # Force standard venv backend for 3.15, leave empty to let nox-uv handle others + NOX_VENV_BACKEND: ${{ matrix.python == '3.15' && 'venv' || '' }} + # Unset the global uv seeder for 3.15 so the standard venv backend doesn't try to use virtualenv internals + VIRTUALENV_SEEDER: ${{ matrix.python == '3.15' && '' || 'uv' }} jobs: From 5b13e26f1b6ea345d471c437176deae04868dae2 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:29:50 +0000 Subject: [PATCH 19/32] remove 3.9 --- .github/workflows/unittest.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 4c4a8e47bb31..2ec969cb658f 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -30,7 +30,7 @@ jobs: strategy: fail-fast: true matrix: - python: ['3.9', '3.10', "3.11", "3.12", "3.13", "3.14", "3.15"] + python: ['3.10', "3.11", "3.12", "3.13", "3.14", "3.15"] steps: - name: Checkout uses: actions/checkout@v6 From e77ee72034b350bf618c2b9f769129b33f71e65e Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:32:37 +0000 Subject: [PATCH 20/32] chore: typo --- .github/workflows/unittest.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 2ec969cb658f..0896762dbeca 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -30,7 +30,7 @@ jobs: strategy: fail-fast: true matrix: - python: ['3.10', "3.11", "3.12", "3.13", "3.14", "3.15"] + python: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] steps: - name: Checkout uses: actions/checkout@v6 From 49ba720d293ceb080d62f2fbe453ea584f871c9c Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:34:08 +0000 Subject: [PATCH 21/32] chore: typo --- .github/workflows/unittest.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 0896762dbeca..5c1b81751a49 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -17,11 +17,6 @@ env: # Can be removed once libcst releases a version with native Python 3.15 wheels # Follow https://github.com/Instagram/LibCST/issues/1445 for updates. PYO3_USE_ABI3_FORWARD_COMPATIBILITY: "1" - # Use UV to speed up testing - # Force standard venv backend for 3.15, leave empty to let nox-uv handle others - NOX_VENV_BACKEND: ${{ matrix.python == '3.15' && 'venv' || '' }} - # Unset the global uv seeder for 3.15 so the standard venv backend doesn't try to use virtualenv internals - VIRTUALENV_SEEDER: ${{ matrix.python == '3.15' && '' || 'uv' }} jobs: @@ -59,7 +54,11 @@ jobs: TARGET_BRANCH: ${{ github.base_ref || github.event.merge_group.base_ref }} TEST_TYPE: unit PY_VERSION: ${{ matrix.python }} + # Use UV to speed up testing + # Force standard venv backend for 3.15, leave empty to let nox-uv handle others NOX_VENV_BACKEND: ${{ matrix.python == '3.15' && 'venv' || '' }} + # Unset the global uv seeder for 3.15 so the standard venv backend doesn't try to use virtualenv internals + VIRTUALENV_SEEDER: ${{ matrix.python == '3.15' && '' || 'uv' }} run: | ci/run_conditional_tests.sh - name: Upload coverage results From 1a41b95f31d5beb4fac6b94225bc08e486a36c3d Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:35:33 +0000 Subject: [PATCH 22/32] clean up --- .github/workflows/unittest.yml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 5c1b81751a49..8db325452a59 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -12,12 +12,6 @@ name: unittest permissions: contents: read -env: - # Workaround: Allows libcst to compile on Python 3.15+ while PyO3 catches up - # Can be removed once libcst releases a version with native Python 3.15 wheels - # Follow https://github.com/Instagram/LibCST/issues/1445 for updates. - PYO3_USE_ABI3_FORWARD_COMPATIBILITY: "1" - jobs: unit: @@ -59,6 +53,10 @@ jobs: NOX_VENV_BACKEND: ${{ matrix.python == '3.15' && 'venv' || '' }} # Unset the global uv seeder for 3.15 so the standard venv backend doesn't try to use virtualenv internals VIRTUALENV_SEEDER: ${{ matrix.python == '3.15' && '' || 'uv' }} + # Workaround: Allows libcst to compile on Python 3.15+ while PyO3 catches up + # Can be removed once libcst releases a version with native Python 3.15 wheels + # Follow https://github.com/Instagram/LibCST/issues/1445 for updates. + PYO3_USE_ABI3_FORWARD_COMPATIBILITY: "1" run: | ci/run_conditional_tests.sh - name: Upload coverage results From 6b60ab8150f541328db2cdb1566ad2d092bf8610 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:40:42 +0000 Subject: [PATCH 23/32] chore: attempt to speed up tests --- .github/workflows/unittest.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 8db325452a59..2b275808e1ed 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -50,7 +50,7 @@ jobs: PY_VERSION: ${{ matrix.python }} # Use UV to speed up testing # Force standard venv backend for 3.15, leave empty to let nox-uv handle others - NOX_VENV_BACKEND: ${{ matrix.python == '3.15' && 'venv' || '' }} + NOX_FORCE_VENV_BACKEND: ${{ matrix.python == '3.15' && 'venv' || '' }} # Unset the global uv seeder for 3.15 so the standard venv backend doesn't try to use virtualenv internals VIRTUALENV_SEEDER: ${{ matrix.python == '3.15' && '' || 'uv' }} # Workaround: Allows libcst to compile on Python 3.15+ while PyO3 catches up From 65689471eae71c85003cb4013d2bded4b552ef4b Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:43:26 +0000 Subject: [PATCH 24/32] chore: attempt to speed up tests --- .github/workflows/unittest.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 2b275808e1ed..ebd64a134e1c 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -48,16 +48,18 @@ jobs: TARGET_BRANCH: ${{ github.base_ref || github.event.merge_group.base_ref }} TEST_TYPE: unit PY_VERSION: ${{ matrix.python }} - # Use UV to speed up testing - # Force standard venv backend for 3.15, leave empty to let nox-uv handle others - NOX_FORCE_VENV_BACKEND: ${{ matrix.python == '3.15' && 'venv' || '' }} - # Unset the global uv seeder for 3.15 so the standard venv backend doesn't try to use virtualenv internals VIRTUALENV_SEEDER: ${{ matrix.python == '3.15' && '' || 'uv' }} # Workaround: Allows libcst to compile on Python 3.15+ while PyO3 catches up # Can be removed once libcst releases a version with native Python 3.15 wheels # Follow https://github.com/Instagram/LibCST/issues/1445 for updates. PYO3_USE_ABI3_FORWARD_COMPATIBILITY: "1" run: | + # Only inject overrides if we are strictly on the 3.15 pre-release + # This is needed to speed up builds + if [ "${{ matrix.python }}" = "3.15" ]; then + export NOX_FORCE_VENV_BACKEND="venv" + export VIRTUALENV_SEEDER="" + fi ci/run_conditional_tests.sh - name: Upload coverage results uses: actions/upload-artifact@v5 From 86b38d081d4af721f06981f92f55d9959e762e0e Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:43:45 +0000 Subject: [PATCH 25/32] chore: attempt to speed up tests --- .github/workflows/unittest.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index ebd64a134e1c..0c1a79b2885d 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -48,7 +48,6 @@ jobs: TARGET_BRANCH: ${{ github.base_ref || github.event.merge_group.base_ref }} TEST_TYPE: unit PY_VERSION: ${{ matrix.python }} - VIRTUALENV_SEEDER: ${{ matrix.python == '3.15' && '' || 'uv' }} # Workaround: Allows libcst to compile on Python 3.15+ while PyO3 catches up # Can be removed once libcst releases a version with native Python 3.15 wheels # Follow https://github.com/Instagram/LibCST/issues/1445 for updates. From bd540711a4752b13fc661fe1219860b74664d167 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:51:30 +0000 Subject: [PATCH 26/32] chore: attempt to speed up tests --- .github/workflows/unittest.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 0c1a79b2885d..0c93ee468e2b 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -41,6 +41,17 @@ jobs: - name: Install nox run: | uv pip install --system nox nox-uv + # Caches compiled wheels locally to prevent building heavy libraries + # such as grpcio, which we build from scratch on every run for Python 3.15+. + # Follow https://github.com/grpc/grpc/issues/41010 for updates. + - name: Cache Built Python 3.15 Wheels + if: matrix.python == '3.15' + uses: actions/cache@v4 + with: + path: .uv-wheel-cache + key: ${{ runner.os }}-uv-wheels-3.15-${{ hashFiles('packages/**/testing/constraints*.txt') }} + restore-keys: | + ${{ runner.os }}-uv-wheels-3.15- - name: Run unit tests env: COVERAGE_FILE: ${{ github.workspace }}/.coverage-${{ matrix.python }} @@ -58,6 +69,8 @@ jobs: if [ "${{ matrix.python }}" = "3.15" ]; then export NOX_FORCE_VENV_BACKEND="venv" export VIRTUALENV_SEEDER="" + # Route uv cache to our persistent workspace directory + export UV_CACHE_DIR="${{ github.workspace }}/.uv-wheel-cache" fi ci/run_conditional_tests.sh - name: Upload coverage results From fac6703081317fda809caee6587f70c416488126 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 21:56:20 +0000 Subject: [PATCH 27/32] restore mypy.ini for bigtable --- packages/google-cloud-bigtable/mypy.ini | 38 +++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 packages/google-cloud-bigtable/mypy.ini diff --git a/packages/google-cloud-bigtable/mypy.ini b/packages/google-cloud-bigtable/mypy.ini new file mode 100644 index 000000000000..701b7587ce6f --- /dev/null +++ b/packages/google-cloud-bigtable/mypy.ini @@ -0,0 +1,38 @@ +[mypy] +python_version = 3.13 +namespace_packages = True +check_untyped_defs = True +warn_unreachable = True +disallow_any_generics = True +exclude = tests/unit/gapic/ + +[mypy-grpc.*] +ignore_missing_imports = True + +[mypy-google.auth.*] +ignore_missing_imports = True + +[mypy-google.iam.*] +ignore_missing_imports = True + +[mypy-google.longrunning.*] +ignore_missing_imports = True + +[mypy-google.oauth2.*] +ignore_missing_imports = True + +[mypy-google.rpc.*] +ignore_missing_imports = True + +[mypy-proto.*] +ignore_missing_imports = True + +[mypy-pytest] +ignore_missing_imports = True + +[mypy-google.cloud.*] +ignore_errors = True + +# only verify data client +[mypy-google.cloud.bigtable.data.*] +ignore_errors = False From 148c3a8320c5319c4bae30654fbd659d58f840e3 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 22:11:05 +0000 Subject: [PATCH 28/32] testing --- .github/workflows/unittest.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 0c93ee468e2b..81044d8a5df8 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -67,7 +67,7 @@ jobs: # Only inject overrides if we are strictly on the 3.15 pre-release # This is needed to speed up builds if [ "${{ matrix.python }}" = "3.15" ]; then - export NOX_FORCE_VENV_BACKEND="venv" + export NOX_FORCE_VENV_BACKEND="uv" export VIRTUALENV_SEEDER="" # Route uv cache to our persistent workspace directory export UV_CACHE_DIR="${{ github.workspace }}/.uv-wheel-cache" From 0f99cba2bd4ad519be8d32f5c36496961a388ac0 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 22:15:17 +0000 Subject: [PATCH 29/32] testing --- .github/workflows/unittest.yml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 81044d8a5df8..f6127affde40 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -67,9 +67,13 @@ jobs: # Only inject overrides if we are strictly on the 3.15 pre-release # This is needed to speed up builds if [ "${{ matrix.python }}" = "3.15" ]; then - export NOX_FORCE_VENV_BACKEND="uv" - export VIRTUALENV_SEEDER="" - # Route uv cache to our persistent workspace directory + # Force Nox to use uv for 3.15 virtual environments + export NOXFLAGS="--default-venv-backend=uv" + + # Tell uv it is allowed to use the pre-release 3.15 toolchain + export UV_PRERELEASE="allow" + + # Route uv's wheel and environment cache to our persistent workspace directory export UV_CACHE_DIR="${{ github.workspace }}/.uv-wheel-cache" fi ci/run_conditional_tests.sh From a9db3363fc44f9457c09793528ee2f0cab69d8a3 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 22:16:50 +0000 Subject: [PATCH 30/32] testing --- .github/workflows/unittest.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index f6127affde40..c9436a5919b8 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -68,7 +68,7 @@ jobs: # This is needed to speed up builds if [ "${{ matrix.python }}" = "3.15" ]; then # Force Nox to use uv for 3.15 virtual environments - export NOXFLAGS="--default-venv-backend=uv" + export NOXFLAGS="--force-venv-backend=uv" # Tell uv it is allowed to use the pre-release 3.15 toolchain export UV_PRERELEASE="allow" From 3ec02f5d175522a5ae71578a96113456bd63408c Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 22:26:39 +0000 Subject: [PATCH 31/32] testing --- .github/workflows/unittest.yml | 3 --- ci/run_single_test.sh | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index c9436a5919b8..4dd268975854 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -67,9 +67,6 @@ jobs: # Only inject overrides if we are strictly on the 3.15 pre-release # This is needed to speed up builds if [ "${{ matrix.python }}" = "3.15" ]; then - # Force Nox to use uv for 3.15 virtual environments - export NOXFLAGS="--force-venv-backend=uv" - # Tell uv it is allowed to use the pre-release 3.15 toolchain export UV_PRERELEASE="allow" diff --git a/ci/run_single_test.sh b/ci/run_single_test.sh index d05b31e9aa34..117c3fad92ca 100755 --- a/ci/run_single_test.sh +++ b/ci/run_single_test.sh @@ -100,7 +100,7 @@ case ${TEST_TYPE} in retval=$? ;; "3.15") - nox -s unit-3.15 + nox --force-venv-backend uv -s unit-3.15 retval=$? ;; *) From 15ddf24007cd4456e7a7d936c2fcd9cab73feb60 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Fri, 26 Jun 2026 22:30:07 +0000 Subject: [PATCH 32/32] testing --- ci/run_single_test.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/ci/run_single_test.sh b/ci/run_single_test.sh index 117c3fad92ca..c2a6b45b6e36 100755 --- a/ci/run_single_test.sh +++ b/ci/run_single_test.sh @@ -100,6 +100,7 @@ case ${TEST_TYPE} in retval=$? ;; "3.15") + # This is needed to speed up builds nox --force-venv-backend uv -s unit-3.15 retval=$? ;;