From bdb1ecddd4ad665f334b11a186a981d6d4537b08 Mon Sep 17 00:00:00 2001 From: Anna Levenberg Date: Thu, 7 Mar 2024 13:22:05 -0500 Subject: [PATCH 1/5] cleanup(pubsub): remove topic and subscription handwritten admin api helper functions --- .../pubsub/samples/pubsub_samples_common.cc | 43 ------------- .../pubsub/samples/pubsub_samples_common.h | 19 ------ .../samples/pubsub_samples_common_test.cc | 62 ------------------- 3 files changed, 124 deletions(-) diff --git a/google/cloud/pubsub/samples/pubsub_samples_common.cc b/google/cloud/pubsub/samples/pubsub_samples_common.cc index 59b137f616f71..7c40904a1ba1c 100644 --- a/google/cloud/pubsub/samples/pubsub_samples_common.cc +++ b/google/cloud/pubsub/samples/pubsub_samples_common.cc @@ -74,49 +74,6 @@ google::cloud::testing_util::Commands::value_type CreateSubscriberCommand( std::move(adapter)}; } -google::cloud::testing_util::Commands::value_type CreateTopicAdminCommand( - std::string const& name, std::vector const& arg_names, - TopicAdminCommand const& command) { - auto adapter = [=](std::vector const& argv) { - if ((argv.size() == 1 && argv[0] == "--help") || - argv.size() != arg_names.size()) { - std::ostringstream os; - os << name; - for (auto const& a : arg_names) { - os << " <" << a << ">"; - } - throw google::cloud::testing_util::Usage{std::move(os).str()}; - } - google::cloud::pubsub::TopicAdminClient client( - google::cloud::pubsub::MakeTopicAdminConnection()); - command(std::move(client), std::move(argv)); - }; - return google::cloud::testing_util::Commands::value_type{name, - std::move(adapter)}; -} - -google::cloud::testing_util::Commands::value_type -CreateSubscriptionAdminCommand(std::string const& name, - std::vector const& arg_names, - SubscriptionAdminCommand const& command) { - auto adapter = [=](std::vector const& argv) { - if ((argv.size() == 1 && argv[0] == "--help") || - argv.size() != arg_names.size()) { - std::ostringstream os; - os << name; - for (auto const& a : arg_names) { - os << " <" << a << ">"; - } - throw google::cloud::testing_util::Usage{std::move(os).str()}; - } - google::cloud::pubsub::SubscriptionAdminClient client( - google::cloud::pubsub::MakeSubscriptionAdminConnection()); - command(std::move(client), std::move(argv)); - }; - return google::cloud::testing_util::Commands::value_type{name, - std::move(adapter)}; -} - google::cloud::testing_util::Commands::value_type CreateSchemaServiceCommand( std::string const& name, std::vector const& arg_names, SchemaServiceCommand const& command) { diff --git a/google/cloud/pubsub/samples/pubsub_samples_common.h b/google/cloud/pubsub/samples/pubsub_samples_common.h index 5fdfe22862b4d..1e18879d52da2 100644 --- a/google/cloud/pubsub/samples/pubsub_samples_common.h +++ b/google/cloud/pubsub/samples/pubsub_samples_common.h @@ -15,13 +15,9 @@ #ifndef GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_PUBSUB_SAMPLES_PUBSUB_SAMPLES_COMMON_H #define GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_PUBSUB_SAMPLES_PUBSUB_SAMPLES_COMMON_H -// TODO(#12987): Remove this file after the deprecation period expires -#include "google/cloud/internal/disable_deprecation_warnings.inc" #include "google/cloud/pubsub/publisher.h" #include "google/cloud/pubsub/schema_client.h" #include "google/cloud/pubsub/subscriber.h" -#include "google/cloud/pubsub/subscription_admin_client.h" -#include "google/cloud/pubsub/topic_admin_client.h" #include "google/cloud/testing_util/example_driver.h" #include #include @@ -45,21 +41,6 @@ google::cloud::testing_util::Commands::value_type CreateSubscriberCommand( std::string const& name, std::vector const& arg_names, SubscriberCommand const& command); -using TopicAdminCommand = std::function const&)>; - -google::cloud::testing_util::Commands::value_type CreateTopicAdminCommand( - std::string const& name, std::vector const& arg_names, - TopicAdminCommand const& command); - -using SubscriptionAdminCommand = std::function const&)>; - -google::cloud::testing_util::Commands::value_type -CreateSubscriptionAdminCommand(std::string const& name, - std::vector const& arg_names, - SubscriptionAdminCommand const& command); - using SchemaServiceCommand = std::function const&)>; diff --git a/google/cloud/pubsub/samples/pubsub_samples_common_test.cc b/google/cloud/pubsub/samples/pubsub_samples_common_test.cc index 2ee02ce8f99f6..32ae8847008f4 100644 --- a/google/cloud/pubsub/samples/pubsub_samples_common_test.cc +++ b/google/cloud/pubsub/samples/pubsub_samples_common_test.cc @@ -88,68 +88,6 @@ TEST(PubSubSamplesCommon, SubscriberCommand) { EXPECT_EQ(1, call_count); } -TEST(PubSubSamplesCommon, TopicAdminCommand) { - using ::google::cloud::testing_util::Usage; - - // Pretend we are using the emulator to avoid loading the default - // credentials from $HOME, which do not exist when running with Bazel. - google::cloud::testing_util::ScopedEnvironment emulator( - "PUBSUB_EMULATOR_HOST", "localhost:8085"); - int call_count = 0; - auto command = [&call_count](pubsub::TopicAdminClient const&, - std::vector const& argv) { - ++call_count; - ASSERT_EQ(2, argv.size()); - EXPECT_EQ("a", argv[0]); - EXPECT_EQ("b", argv[1]); - }; - auto const actual = - CreateTopicAdminCommand("command-name", {"foo", "bar"}, command); - EXPECT_EQ("command-name", actual.first); - EXPECT_THROW( - try { actual.second({}); } catch (Usage const& ex) { - EXPECT_THAT(ex.what(), HasSubstr("command-name")); - EXPECT_THAT(ex.what(), HasSubstr("foo")); - EXPECT_THAT(ex.what(), HasSubstr("bar")); - throw; - }, - Usage); - - ASSERT_NO_FATAL_FAILURE(actual.second({"a", "b"})); - EXPECT_EQ(1, call_count); -} - -TEST(PubSubSamplesCommon, SubscriptionAdminCommand) { - using ::google::cloud::testing_util::Usage; - - // Pretend we are using the emulator to avoid loading the default - // credentials from $HOME, which do not exist when running with Bazel. - google::cloud::testing_util::ScopedEnvironment emulator( - "PUBSUB_EMULATOR_HOST", "localhost:8085"); - int call_count = 0; - auto command = [&call_count](pubsub::SubscriptionAdminClient const&, - std::vector const& argv) { - ++call_count; - ASSERT_EQ(2, argv.size()); - EXPECT_EQ("a", argv[0]); - EXPECT_EQ("b", argv[1]); - }; - auto const actual = - CreateSubscriptionAdminCommand("command-name", {"foo", "bar"}, command); - EXPECT_EQ("command-name", actual.first); - EXPECT_THROW( - try { actual.second({}); } catch (Usage const& ex) { - EXPECT_THAT(ex.what(), HasSubstr("command-name")); - EXPECT_THAT(ex.what(), HasSubstr("foo")); - EXPECT_THAT(ex.what(), HasSubstr("bar")); - throw; - }, - Usage); - - ASSERT_NO_FATAL_FAILURE(actual.second({"a", "b"})); - EXPECT_EQ(1, call_count); -} - TEST(PubSubSamplesCommon, SchemaServiceCommand) { using ::google::cloud::testing_util::Usage; From 7311c67044e9d91b0d918c4283cff952758e6b24 Mon Sep 17 00:00:00 2001 From: Anna Levenberg Date: Fri, 8 Mar 2024 10:10:09 -0500 Subject: [PATCH 2/5] fix build issues by including schema.h --- google/cloud/pubsub/samples/pubsub_samples_common.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/google/cloud/pubsub/samples/pubsub_samples_common.cc b/google/cloud/pubsub/samples/pubsub_samples_common.cc index 7c40904a1ba1c..a2d86a86e9e74 100644 --- a/google/cloud/pubsub/samples/pubsub_samples_common.cc +++ b/google/cloud/pubsub/samples/pubsub_samples_common.cc @@ -14,6 +14,7 @@ #include "google/cloud/pubsub/samples/pubsub_samples_common.h" #include "google/cloud/pubsub/testing/random_names.h" +#include "google/cloud/pubsub/schema.h" #include "google/cloud/internal/getenv.h" #include "google/cloud/internal/time_utils.h" #include "google/cloud/project.h" From d443acb01bd3bc0eda840bafa485138a55ff78e5 Mon Sep 17 00:00:00 2001 From: Anna Levenberg Date: Fri, 8 Mar 2024 10:59:14 -0500 Subject: [PATCH 3/5] add schema --- google/cloud/pubsub/samples/pubsub_samples_common.cc | 2 +- google/cloud/pubsub/samples/subscription_admin_samples.cc | 1 + google/cloud/pubsub/samples/topic_admin_samples.cc | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/google/cloud/pubsub/samples/pubsub_samples_common.cc b/google/cloud/pubsub/samples/pubsub_samples_common.cc index a2d86a86e9e74..934c05ef20e92 100644 --- a/google/cloud/pubsub/samples/pubsub_samples_common.cc +++ b/google/cloud/pubsub/samples/pubsub_samples_common.cc @@ -13,8 +13,8 @@ // limitations under the License. #include "google/cloud/pubsub/samples/pubsub_samples_common.h" -#include "google/cloud/pubsub/testing/random_names.h" #include "google/cloud/pubsub/schema.h" +#include "google/cloud/pubsub/testing/random_names.h" #include "google/cloud/internal/getenv.h" #include "google/cloud/internal/time_utils.h" #include "google/cloud/project.h" diff --git a/google/cloud/pubsub/samples/subscription_admin_samples.cc b/google/cloud/pubsub/samples/subscription_admin_samples.cc index 95eada05afc33..c39acf25777ee 100644 --- a/google/cloud/pubsub/samples/subscription_admin_samples.cc +++ b/google/cloud/pubsub/samples/subscription_admin_samples.cc @@ -15,6 +15,7 @@ #include "google/cloud/pubsub/admin/subscription_admin_client.h" #include "google/cloud/pubsub/admin/topic_admin_client.h" #include "google/cloud/pubsub/samples/pubsub_samples_common.h" +#include "google/cloud/pubsub/schema.h" #include "google/cloud/pubsub/subscription.h" #include "google/cloud/internal/getenv.h" #include "google/cloud/internal/random.h" diff --git a/google/cloud/pubsub/samples/topic_admin_samples.cc b/google/cloud/pubsub/samples/topic_admin_samples.cc index 24c07fa89b8e1..9e2a192487132 100644 --- a/google/cloud/pubsub/samples/topic_admin_samples.cc +++ b/google/cloud/pubsub/samples/topic_admin_samples.cc @@ -15,6 +15,7 @@ #include "google/cloud/pubsub/admin/subscription_admin_client.h" #include "google/cloud/pubsub/admin/topic_admin_client.h" #include "google/cloud/pubsub/samples/pubsub_samples_common.h" +#include "google/cloud/pubsub/schema.h" #include "google/cloud/pubsub/subscription.h" #include "google/cloud/pubsub/topic.h" #include "google/cloud/internal/getenv.h" From 184e4b79c7f96b3c29261e8c3ec5a475b8f481ea Mon Sep 17 00:00:00 2001 From: Anna Levenberg Date: Fri, 8 Mar 2024 11:07:54 -0500 Subject: [PATCH 4/5] add snapshotg --- google/cloud/pubsub/samples/subscription_admin_samples.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/google/cloud/pubsub/samples/subscription_admin_samples.cc b/google/cloud/pubsub/samples/subscription_admin_samples.cc index c39acf25777ee..c3819fed29ac6 100644 --- a/google/cloud/pubsub/samples/subscription_admin_samples.cc +++ b/google/cloud/pubsub/samples/subscription_admin_samples.cc @@ -17,6 +17,7 @@ #include "google/cloud/pubsub/samples/pubsub_samples_common.h" #include "google/cloud/pubsub/schema.h" #include "google/cloud/pubsub/subscription.h" +#include "google/cloud/pubsub/snapshot.h" #include "google/cloud/internal/getenv.h" #include "google/cloud/internal/random.h" #include "google/cloud/project.h" From df23bfe68c4b3497f9a8c908410127105ecbb617 Mon Sep 17 00:00:00 2001 From: Anna Levenberg Date: Fri, 8 Mar 2024 11:13:15 -0500 Subject: [PATCH 5/5] chheckers --- google/cloud/pubsub/samples/subscription_admin_samples.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/google/cloud/pubsub/samples/subscription_admin_samples.cc b/google/cloud/pubsub/samples/subscription_admin_samples.cc index c3819fed29ac6..46b9bb7ef2012 100644 --- a/google/cloud/pubsub/samples/subscription_admin_samples.cc +++ b/google/cloud/pubsub/samples/subscription_admin_samples.cc @@ -16,8 +16,8 @@ #include "google/cloud/pubsub/admin/topic_admin_client.h" #include "google/cloud/pubsub/samples/pubsub_samples_common.h" #include "google/cloud/pubsub/schema.h" -#include "google/cloud/pubsub/subscription.h" #include "google/cloud/pubsub/snapshot.h" +#include "google/cloud/pubsub/subscription.h" #include "google/cloud/internal/getenv.h" #include "google/cloud/internal/random.h" #include "google/cloud/project.h"