aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Tiller <ctiller@google.com>2023-10-04 19:06:58 -0700
committerGitHub <noreply@github.com>2023-10-04 19:06:58 -0700
commit3b0916fc0aa61d5e2fd452de089f080763dcc531 (patch)
tree3ad6284a68031f804ccee401e008501164221965
parent36b70504e53669a26d5394366015a394983b4e20 (diff)
downloadgrpc-grpc-3b0916fc0aa61d5e2fd452de089f080763dcc531.tar.gz
Revert "[reflection] Add v1 reflection" (#34594)
Reverts grpc/grpc#34535
-rw-r--r--BUILD1
-rw-r--r--CMakeLists.txt7
-rw-r--r--build_autogenerated.yaml1
-rw-r--r--grpc.gyp1
-rw-r--r--include/grpcpp/ext/proto_server_reflection_plugin.h8
-rw-r--r--src/cpp/ext/proto_server_reflection.cc116
-rw-r--r--src/cpp/ext/proto_server_reflection.h104
-rw-r--r--src/cpp/ext/proto_server_reflection_plugin.cc30
-rw-r--r--test/cpp/end2end/proto_server_reflection_test.cc80
-rw-r--r--test/cpp/util/grpc_tool_test.cc26
10 files changed, 117 insertions, 257 deletions
diff --git a/BUILD b/BUILD
index d28384cb2a..0598132141 100644
--- a/BUILD
+++ b/BUILD
@@ -2108,7 +2108,6 @@ grpc_cc_library(
deps = [
"grpc++",
"grpc++_config_proto",
- "//src/proto/grpc/reflection/v1:reflection_proto",
"//src/proto/grpc/reflection/v1alpha:reflection_proto",
],
alwayslink = 1,
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 925843e7cf..55e4a78f57 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -625,9 +625,6 @@ protobuf_generate_grpc_cpp_with_import_path_correction(
src/proto/grpc/lookup/v1/rls_config.proto src/proto/grpc/lookup/v1/rls_config.proto
)
protobuf_generate_grpc_cpp_with_import_path_correction(
- src/proto/grpc/reflection/v1/reflection.proto src/proto/grpc/reflection/v1/reflection.proto
-)
-protobuf_generate_grpc_cpp_with_import_path_correction(
src/proto/grpc/reflection/v1alpha/reflection.proto src/proto/grpc/reflection/v1alpha/reflection.proto
)
protobuf_generate_grpc_cpp_with_import_path_correction(
@@ -4283,10 +4280,6 @@ endif()
if(gRPC_BUILD_CODEGEN)
add_library(grpc++_reflection
- ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1/reflection.pb.cc
- ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1/reflection.grpc.pb.cc
- ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1/reflection.pb.h
- ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1/reflection.grpc.pb.h
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.cc
${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.h
diff --git a/build_autogenerated.yaml b/build_autogenerated.yaml
index f2370733b8..a1b0db7444 100644
--- a/build_autogenerated.yaml
+++ b/build_autogenerated.yaml
@@ -3673,7 +3673,6 @@ libs:
headers:
- src/cpp/ext/proto_server_reflection.h
src:
- - src/proto/grpc/reflection/v1/reflection.proto
- src/proto/grpc/reflection/v1alpha/reflection.proto
- src/cpp/ext/proto_server_reflection.cc
- src/cpp/ext/proto_server_reflection_plugin.cc
diff --git a/grpc.gyp b/grpc.gyp
index 8c8a3f4af8..6868b4996b 100644
--- a/grpc.gyp
+++ b/grpc.gyp
@@ -1842,7 +1842,6 @@
'grpc++',
],
'sources': [
- 'src/proto/grpc/reflection/v1/reflection.proto',
'src/proto/grpc/reflection/v1alpha/reflection.proto',
'src/cpp/ext/proto_server_reflection.cc',
'src/cpp/ext/proto_server_reflection_plugin.cc',
diff --git a/include/grpcpp/ext/proto_server_reflection_plugin.h b/include/grpcpp/ext/proto_server_reflection_plugin.h
index b1cbb5a67c..2e3964c957 100644
--- a/include/grpcpp/ext/proto_server_reflection_plugin.h
+++ b/include/grpcpp/ext/proto_server_reflection_plugin.h
@@ -19,15 +19,11 @@
#ifndef GRPCPP_EXT_PROTO_SERVER_REFLECTION_PLUGIN_H
#define GRPCPP_EXT_PROTO_SERVER_REFLECTION_PLUGIN_H
-#include <memory>
-
#include <grpcpp/impl/server_builder_plugin.h>
#include <grpcpp/support/config.h>
namespace grpc {
class ProtoServerReflection;
-class ProtoServerReflectionBackend;
-class ProtoServerReflectionV1;
class ServerInitializer;
namespace reflection {
@@ -43,9 +39,7 @@ class ProtoServerReflectionPlugin : public grpc::ServerBuilderPlugin {
bool has_sync_methods() const override;
private:
- std::shared_ptr<grpc::ProtoServerReflectionBackend> backend_;
- std::shared_ptr<grpc::ProtoServerReflection> reflection_service_v1alpha_;
- std::shared_ptr<grpc::ProtoServerReflectionV1> reflection_service_v1_;
+ std::shared_ptr<grpc::ProtoServerReflection> reflection_service_;
};
/// Add proto reflection plugin to \a ServerBuilder.
diff --git a/src/cpp/ext/proto_server_reflection.cc b/src/cpp/ext/proto_server_reflection.cc
index 7d008794c4..ce49768c6a 100644
--- a/src/cpp/ext/proto_server_reflection.cc
+++ b/src/cpp/ext/proto_server_reflection.cc
@@ -23,41 +23,58 @@
#include <grpcpp/grpcpp.h>
#include <grpcpp/support/interceptor.h>
-#include <grpcpp/support/sync_stream.h>
// IWYU pragma: no_include "google/protobuf/descriptor.h"
// IWYU pragma: no_include <google/protobuf/descriptor.h>
-// IWYU pragma: no_include "src/proto/grpc/reflection/v1/reflection.pb.h"
-// IWYU pragma: no_include "src/proto/grpc/reflection/v1alpha/reflection.pb.h"
+
+using grpc::reflection::v1alpha::ErrorResponse;
+using grpc::reflection::v1alpha::ExtensionNumberResponse;
+using grpc::reflection::v1alpha::ExtensionRequest;
+using grpc::reflection::v1alpha::ListServiceResponse;
+using grpc::reflection::v1alpha::ServerReflectionRequest;
+using grpc::reflection::v1alpha::ServerReflectionResponse;
+using grpc::reflection::v1alpha::ServiceResponse;
namespace grpc {
-template <typename Request, typename Response>
-Status ProtoServerReflectionBackend::ServerReflectionInfo(
- ServerReaderWriter<Response, Request>* stream) const {
- Request request;
- Response response;
+ProtoServerReflection::ProtoServerReflection()
+ : descriptor_pool_(protobuf::DescriptorPool::generated_pool()) {}
+
+void ProtoServerReflection::SetServiceList(
+ const std::vector<std::string>* services) {
+ services_ = services;
+}
+
+Status ProtoServerReflection::ServerReflectionInfo(
+ ServerContext* context,
+ ServerReaderWriter<ServerReflectionResponse, ServerReflectionRequest>*
+ stream) {
+ ServerReflectionRequest request;
+ ServerReflectionResponse response;
Status status;
while (stream->Read(&request)) {
switch (request.message_request_case()) {
- case Request::MessageRequestCase::kFileByFilename:
- status = GetFileByName(request.file_by_filename(), &response);
+ case ServerReflectionRequest::MessageRequestCase::kFileByFilename:
+ status = GetFileByName(context, request.file_by_filename(), &response);
break;
- case Request::MessageRequestCase::kFileContainingSymbol:
- status = GetFileContainingSymbol(request.file_containing_symbol(),
- &response);
+ case ServerReflectionRequest::MessageRequestCase::kFileContainingSymbol:
+ status = GetFileContainingSymbol(
+ context, request.file_containing_symbol(), &response);
break;
- case Request::MessageRequestCase::kFileContainingExtension:
+ case ServerReflectionRequest::MessageRequestCase::
+ kFileContainingExtension:
status = GetFileContainingExtension(
- &request.file_containing_extension(), &response);
+ context, &request.file_containing_extension(), &response);
break;
- case Request::MessageRequestCase::kAllExtensionNumbersOfType:
+ case ServerReflectionRequest::MessageRequestCase::
+ kAllExtensionNumbersOfType:
status = GetAllExtensionNumbers(
- request.all_extension_numbers_of_type(),
+ context, request.all_extension_numbers_of_type(),
response.mutable_all_extension_numbers_response());
break;
- case Request::MessageRequestCase::kListServices:
- status = ListService(response.mutable_list_services_response());
+ case ServerReflectionRequest::MessageRequestCase::kListServices:
+ status =
+ ListService(context, response.mutable_list_services_response());
break;
default:
status = Status(StatusCode::UNIMPLEMENTED, "");
@@ -67,34 +84,35 @@ Status ProtoServerReflectionBackend::ServerReflectionInfo(
FillErrorResponse(status, response.mutable_error_response());
}
response.set_valid_host(request.host());
- response.set_allocated_original_request(new Request(request));
+ response.set_allocated_original_request(
+ new ServerReflectionRequest(request));
stream->Write(response);
}
+
return Status::OK;
}
-template <typename Response>
-void ProtoServerReflectionBackend::FillErrorResponse(
- const Status& status, Response* error_response) const {
+void ProtoServerReflection::FillErrorResponse(const Status& status,
+ ErrorResponse* error_response) {
error_response->set_error_code(status.error_code());
error_response->set_error_message(status.error_message());
}
-template <typename Response>
-Status ProtoServerReflectionBackend::ListService(Response* response) const {
+Status ProtoServerReflection::ListService(ServerContext* /*context*/,
+ ListServiceResponse* response) {
if (services_ == nullptr) {
return Status(StatusCode::NOT_FOUND, "Services not found.");
}
for (const auto& value : *services_) {
- auto* service_response = response->add_service();
+ ServiceResponse* service_response = response->add_service();
service_response->set_name(value);
}
return Status::OK;
}
-template <typename Response>
-Status ProtoServerReflectionBackend::GetFileByName(const std::string& file_name,
- Response* response) const {
+Status ProtoServerReflection::GetFileByName(
+ ServerContext* /*context*/, const std::string& file_name,
+ ServerReflectionResponse* response) {
if (descriptor_pool_ == nullptr) {
return Status::CANCELLED;
}
@@ -109,9 +127,9 @@ Status ProtoServerReflectionBackend::GetFileByName(const std::string& file_name,
return Status::OK;
}
-template <typename Response>
-Status ProtoServerReflectionBackend::GetFileContainingSymbol(
- const std::string& symbol, Response* response) const {
+Status ProtoServerReflection::GetFileContainingSymbol(
+ ServerContext* /*context*/, const std::string& symbol,
+ ServerReflectionResponse* response) {
if (descriptor_pool_ == nullptr) {
return Status::CANCELLED;
}
@@ -126,9 +144,9 @@ Status ProtoServerReflectionBackend::GetFileContainingSymbol(
return Status::OK;
}
-template <typename Request, typename Response>
-Status ProtoServerReflectionBackend::GetFileContainingExtension(
- const Request* request, Response* response) const {
+Status ProtoServerReflection::GetFileContainingExtension(
+ ServerContext* /*context*/, const ExtensionRequest* request,
+ ServerReflectionResponse* response) {
if (descriptor_pool_ == nullptr) {
return Status::CANCELLED;
}
@@ -150,9 +168,9 @@ Status ProtoServerReflectionBackend::GetFileContainingExtension(
return Status::OK;
}
-template <typename Response>
-Status ProtoServerReflectionBackend::GetAllExtensionNumbers(
- const std::string& type, Response* response) const {
+Status ProtoServerReflection::GetAllExtensionNumbers(
+ ServerContext* /*context*/, const std::string& type,
+ ExtensionNumberResponse* response) {
if (descriptor_pool_ == nullptr) {
return Status::CANCELLED;
}
@@ -172,10 +190,10 @@ Status ProtoServerReflectionBackend::GetAllExtensionNumbers(
return Status::OK;
}
-template <typename Response>
-void ProtoServerReflectionBackend::FillFileDescriptorResponse(
- const protobuf::FileDescriptor* file_desc, Response* response,
- std::unordered_set<std::string>* seen_files) const {
+void ProtoServerReflection::FillFileDescriptorResponse(
+ const protobuf::FileDescriptor* file_desc,
+ ServerReflectionResponse* response,
+ std::unordered_set<std::string>* seen_files) {
if (seen_files->find(file_desc->name()) != seen_files->end()) {
return;
}
@@ -192,18 +210,4 @@ void ProtoServerReflectionBackend::FillFileDescriptorResponse(
}
}
-Status ProtoServerReflection::ServerReflectionInfo(
- ServerContext* /* context */,
- ServerReaderWriter<reflection::v1alpha::ServerReflectionResponse,
- reflection::v1alpha::ServerReflectionRequest>* stream) {
- return backend_->ServerReflectionInfo(stream);
-}
-
-Status ProtoServerReflectionV1::ServerReflectionInfo(
- ServerContext* /* context */,
- ServerReaderWriter<reflection::v1::ServerReflectionResponse,
- reflection::v1::ServerReflectionRequest>* stream) {
- return backend_->ServerReflectionInfo(stream);
-}
-
} // namespace grpc
diff --git a/src/cpp/ext/proto_server_reflection.h b/src/cpp/ext/proto_server_reflection.h
index 5482c9bc25..60a6f5614a 100644
--- a/src/cpp/ext/proto_server_reflection.h
+++ b/src/cpp/ext/proto_server_reflection.h
@@ -19,10 +19,8 @@
#ifndef GRPC_SRC_CPP_EXT_PROTO_SERVER_REFLECTION_H
#define GRPC_SRC_CPP_EXT_PROTO_SERVER_REFLECTION_H
-#include <memory>
#include <string>
#include <unordered_set>
-#include <utility>
#include <vector>
#include <grpcpp/grpcpp.h>
@@ -31,72 +29,18 @@
#include <grpcpp/support/status.h>
#include <grpcpp/support/sync_stream.h>
-#include "src/proto/grpc/reflection/v1/reflection.grpc.pb.h"
-#include "src/proto/grpc/reflection/v1/reflection.pb.h"
#include "src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.h"
#include "src/proto/grpc/reflection/v1alpha/reflection.pb.h"
namespace grpc {
-class ProtoServerReflectionBackend {
- public:
- ProtoServerReflectionBackend()
- : descriptor_pool_(protobuf::DescriptorPool::generated_pool()) {}
-
- void SetServiceList(const std::vector<std::string>* services) {
- services_ = services;
- }
-
- template <typename Request, typename Response>
- Status ServerReflectionInfo(
- ServerReaderWriter<Response, Request>* stream) const;
-
- private:
- template <typename Response>
- Status ListService(Response* response) const;
-
- template <typename Response>
- Status GetFileByName(const std::string& file_name, Response* response) const;
-
- template <typename Response>
- Status GetFileContainingSymbol(const std::string& symbol,
- Response* response) const;
-
- template <typename Request, typename Response>
- Status GetFileContainingExtension(const Request* request,
- Response* response) const;
-
- template <typename Response>
- Status GetAllExtensionNumbers(const std::string& type,
- Response* response) const;
-
- template <typename Response>
- void FillFileDescriptorResponse(
- const protobuf::FileDescriptor* file_desc, Response* response,
- std::unordered_set<std::string>* seen_files) const;
-
- template <typename Response>
- void FillErrorResponse(const Status& status, Response* error_response) const;
-
- const protobuf::DescriptorPool* descriptor_pool_;
- const std::vector<string>* services_;
-};
-
class ProtoServerReflection final
: public reflection::v1alpha::ServerReflection::Service {
public:
- ProtoServerReflection()
- : grpc::ProtoServerReflection(
- std::make_shared<ProtoServerReflectionBackend>()) {}
-
- explicit ProtoServerReflection(
- std::shared_ptr<ProtoServerReflectionBackend> backend)
- : backend_(std::move(backend)) {}
+ ProtoServerReflection();
// Add the full names of registered services
- void SetServiceList(const std::vector<std::string>* services) {
- backend_->SetServiceList(services);
- }
+ void SetServiceList(const std::vector<std::string>* services);
// implementation of ServerReflectionInfo(stream ServerReflectionRequest) rpc
// in ServerReflection service
@@ -106,26 +50,36 @@ class ProtoServerReflection final
reflection::v1alpha::ServerReflectionRequest>* stream)
override;
- std::shared_ptr<ProtoServerReflectionBackend> backend_;
-};
+ private:
+ Status ListService(ServerContext* context,
+ reflection::v1alpha::ListServiceResponse* response);
-class ProtoServerReflectionV1 final
- : public reflection::v1::ServerReflection::Service {
- public:
- explicit ProtoServerReflectionV1(
- std::shared_ptr<ProtoServerReflectionBackend> backend)
- : backend_(std::move(backend)) {}
+ Status GetFileByName(ServerContext* context, const std::string& file_name,
+ reflection::v1alpha::ServerReflectionResponse* response);
- // implementation of ServerReflectionInfo(stream ServerReflectionRequest) rpc
- // in ServerReflection service
- Status ServerReflectionInfo(
- ServerContext* /* context */,
- ServerReaderWriter<reflection::v1::ServerReflectionResponse,
- reflection::v1::ServerReflectionRequest>* stream)
- override;
+ Status GetFileContainingSymbol(
+ ServerContext* context, const std::string& symbol,
+ reflection::v1alpha::ServerReflectionResponse* response);
- private:
- std::shared_ptr<ProtoServerReflectionBackend> backend_;
+ Status GetFileContainingExtension(
+ ServerContext* context,
+ const reflection::v1alpha::ExtensionRequest* request,
+ reflection::v1alpha::ServerReflectionResponse* response);
+
+ Status GetAllExtensionNumbers(
+ ServerContext* context, const std::string& type,
+ reflection::v1alpha::ExtensionNumberResponse* response);
+
+ void FillFileDescriptorResponse(
+ const protobuf::FileDescriptor* file_desc,
+ reflection::v1alpha::ServerReflectionResponse* response,
+ std::unordered_set<std::string>* seen_files);
+
+ void FillErrorResponse(const Status& status,
+ reflection::v1alpha::ErrorResponse* error_response);
+
+ const protobuf::DescriptorPool* descriptor_pool_;
+ const std::vector<string>* services_;
};
} // namespace grpc
diff --git a/src/cpp/ext/proto_server_reflection_plugin.cc b/src/cpp/ext/proto_server_reflection_plugin.cc
index 78080fa8cb..4aae3ea17b 100644
--- a/src/cpp/ext/proto_server_reflection_plugin.cc
+++ b/src/cpp/ext/proto_server_reflection_plugin.cc
@@ -16,9 +16,6 @@
//
//
-#include <memory>
-#include <string>
-
#include <grpcpp/ext/proto_server_reflection_plugin.h>
#include <grpcpp/impl/server_builder_plugin.h>
#include <grpcpp/impl/server_initializer.h>
@@ -30,40 +27,35 @@ namespace grpc {
namespace reflection {
ProtoServerReflectionPlugin::ProtoServerReflectionPlugin()
- : backend_(std::make_shared<ProtoServerReflectionBackend>()),
- reflection_service_v1alpha_(
- std::make_shared<ProtoServerReflection>(backend_)),
- reflection_service_v1_(
- std::make_shared<ProtoServerReflectionV1>(backend_)) {}
+ : reflection_service_(new grpc::ProtoServerReflection()) {}
std::string ProtoServerReflectionPlugin::name() {
return "proto_server_reflection";
}
void ProtoServerReflectionPlugin::InitServer(grpc::ServerInitializer* si) {
- si->RegisterService(reflection_service_v1_);
- si->RegisterService(reflection_service_v1alpha_);
+ si->RegisterService(reflection_service_);
}
void ProtoServerReflectionPlugin::Finish(grpc::ServerInitializer* si) {
- backend_->SetServiceList(si->GetServiceList());
+ reflection_service_->SetServiceList(si->GetServiceList());
}
void ProtoServerReflectionPlugin::ChangeArguments(const std::string& /*name*/,
void* /*value*/) {}
bool ProtoServerReflectionPlugin::has_sync_methods() const {
- return (reflection_service_v1_ &&
- reflection_service_v1_->has_synchronous_methods()) ||
- (reflection_service_v1alpha_ &&
- reflection_service_v1alpha_->has_synchronous_methods());
+ if (reflection_service_) {
+ return reflection_service_->has_synchronous_methods();
+ }
+ return false;
}
bool ProtoServerReflectionPlugin::has_async_methods() const {
- return (reflection_service_v1_ &&
- reflection_service_v1_->has_async_methods()) ||
- (reflection_service_v1alpha_ &&
- reflection_service_v1alpha_->has_async_methods());
+ if (reflection_service_) {
+ return reflection_service_->has_async_methods();
+ }
+ return false;
}
static std::unique_ptr<grpc::ServerBuilderPlugin> CreateProtoReflection() {
diff --git a/test/cpp/end2end/proto_server_reflection_test.cc b/test/cpp/end2end/proto_server_reflection_test.cc
index 17b3913b36..5f6c38f3c1 100644
--- a/test/cpp/end2end/proto_server_reflection_test.cc
+++ b/test/cpp/end2end/proto_server_reflection_test.cc
@@ -16,12 +16,10 @@
//
//
-#include <memory>
-#include <vector>
-
-#include <gmock/gmock-matchers.h>
#include <gtest/gtest.h>
+#include "absl/memory/memory.h"
+
#include <grpc/grpc.h>
#include <grpcpp/channel.h>
#include <grpcpp/client_context.h>
@@ -33,13 +31,10 @@
#include <grpcpp/server_builder.h>
#include <grpcpp/server_context.h>
-#include "src/proto/grpc/reflection/v1/reflection.grpc.pb.h"
-#include "src/proto/grpc/reflection/v1/reflection.pb.h"
-#include "src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.h"
-#include "src/proto/grpc/reflection/v1alpha/reflection.pb.h"
#include "src/proto/grpc/testing/echo.grpc.pb.h"
#include "test/core/util/port.h"
#include "test/core/util/test_config.h"
+#include "test/cpp/end2end/test_service_impl.h"
#include "test/cpp/util/proto_reflection_descriptor_database.h"
namespace grpc {
@@ -61,9 +56,10 @@ class ProtoServerReflectionTest : public ::testing::Test {
void ResetStub() {
string target = "dns:localhost:" + to_string(port_);
- channel_ = grpc::CreateChannel(target, InsecureChannelCredentials());
- stub_ = grpc::testing::EchoTestService::NewStub(channel_);
- desc_db_ = std::make_unique<ProtoReflectionDescriptorDatabase>(channel_);
+ std::shared_ptr<Channel> channel =
+ grpc::CreateChannel(target, InsecureChannelCredentials());
+ stub_ = grpc::testing::EchoTestService::NewStub(channel);
+ desc_db_ = std::make_unique<ProtoReflectionDescriptorDatabase>(channel);
desc_pool_ = std::make_unique<protobuf::DescriptorPool>(desc_db_.get());
}
@@ -121,18 +117,8 @@ class ProtoServerReflectionTest : public ::testing::Test {
EXPECT_EQ(desc->DebugString(), ref_desc->DebugString());
}
- template <typename Response>
- std::vector<std::string> ServicesFromResponse(const Response& response) {
- std::vector<std::string> services;
- for (const auto& service : response.list_services_response().service()) {
- services.emplace_back(service.name());
- }
- return services;
- }
-
protected:
std::unique_ptr<Server> server_;
- std::shared_ptr<Channel> channel_;
std::unique_ptr<grpc::testing::EchoTestService::Stub> stub_;
std::unique_ptr<ProtoReflectionDescriptorDatabase> desc_db_;
std::unique_ptr<protobuf::DescriptorPool> desc_pool_;
@@ -156,58 +142,6 @@ TEST_F(ProtoServerReflectionTest, CheckResponseWithLocalDescriptorPool) {
}
}
-TEST_F(ProtoServerReflectionTest, V1AlphaApiInstalled) {
- ResetStub();
- using Service = reflection::v1alpha::ServerReflection;
- using Request = reflection::v1alpha::ServerReflectionRequest;
- using Response = reflection::v1alpha::ServerReflectionResponse;
- Service::Stub stub(channel_);
- ClientContext context;
- auto reader_writer = stub.ServerReflectionInfo(&context);
- Request request;
- request.set_list_services("*");
- reader_writer->Write(request);
- Response response;
- ASSERT_EQ(reader_writer->Read(&response), true);
- EXPECT_THAT(ServicesFromResponse(response),
- ::testing::UnorderedElementsAre(
- reflection::v1alpha::ServerReflection::service_full_name(),
- reflection::v1::ServerReflection::service_full_name()));
- request = Request::default_instance();
- request.set_file_containing_symbol(Service::service_full_name());
- reader_writer->WriteLast(request, WriteOptions());
- response = Response::default_instance();
- ASSERT_EQ(reader_writer->Read(&response), true);
- EXPECT_EQ(response.file_descriptor_response().file_descriptor_proto_size(), 1)
- << response.DebugString();
-}
-
-TEST_F(ProtoServerReflectionTest, V1ApiInstalled) {
- ResetStub();
- using Service = reflection::v1::ServerReflection;
- using Request = reflection::v1::ServerReflectionRequest;
- using Response = reflection::v1::ServerReflectionResponse;
- Service::Stub stub(channel_);
- ClientContext context;
- auto reader_writer = stub.ServerReflectionInfo(&context);
- Request request;
- request.set_list_services("*");
- reader_writer->Write(request);
- Response response;
- ASSERT_TRUE(reader_writer->Read(&response));
- EXPECT_THAT(ServicesFromResponse(response),
- ::testing::UnorderedElementsAre(
- reflection::v1alpha::ServerReflection::service_full_name(),
- reflection::v1::ServerReflection::service_full_name()));
- request = Request::default_instance();
- request.set_file_containing_symbol(Service::service_full_name());
- reader_writer->WriteLast(request, WriteOptions());
- response = Response::default_instance();
- ASSERT_TRUE(reader_writer->Read(&response));
- EXPECT_EQ(response.file_descriptor_response().file_descriptor_proto_size(), 1)
- << response.DebugString();
-}
-
} // namespace testing
} // namespace grpc
diff --git a/test/cpp/util/grpc_tool_test.cc b/test/cpp/util/grpc_tool_test.cc
index 890c554665..c204702dfd 100644
--- a/test/cpp/util/grpc_tool_test.cc
+++ b/test/cpp/util/grpc_tool_test.cc
@@ -21,12 +21,10 @@
#include <chrono>
#include <sstream>
-#include <gmock/gmock-matchers.h>
#include <gtest/gtest.h>
#include "absl/flags/declare.h"
#include "absl/flags/flag.h"
-#include "absl/strings/str_split.h"
#include <grpc/grpc.h>
#include <grpc/support/alloc.h>
@@ -386,11 +384,9 @@ TEST_F(GrpcToolTest, ListCommand) {
EXPECT_TRUE(0 == GrpcToolMainLib(ArraySize(argv), argv, TestCliCredentials(),
std::bind(PrintStream, &output_stream,
std::placeholders::_1)));
- EXPECT_THAT(absl::StrSplit(output_stream.str(), "\n"),
- ::testing::UnorderedElementsAre(
- "grpc.testing.EchoTestService",
- "grpc.reflection.v1alpha.ServerReflection",
- "grpc.reflection.v1.ServerReflection", ""));
+ EXPECT_TRUE(0 == strcmp(output_stream.str().c_str(),
+ "grpc.testing.EchoTestService\n"
+ "grpc.reflection.v1alpha.ServerReflection\n"));
ShutdownServer();
}
@@ -1399,11 +1395,9 @@ TEST_F(GrpcToolTest, ListCommandOverrideSslHostName) {
0 == GrpcToolMainLib(
ArraySize(argv), argv, TestCliCredentials(true),
std::bind(PrintStream, &output_stream, std::placeholders::_1)));
- EXPECT_THAT(
- absl::StrSplit(output_stream.str(), '\n'),
- ::testing::UnorderedElementsAre(
- "grpc.testing.EchoTestService", "grpc.reflection.v1.ServerReflection",
- "grpc.reflection.v1alpha.ServerReflection", ""));
+ EXPECT_TRUE(0 == strcmp(output_stream.str().c_str(),
+ "grpc.testing.EchoTestService\n"
+ "grpc.reflection.v1alpha.ServerReflection\n"));
absl::SetFlag(&FLAGS_channel_creds_type, "");
absl::SetFlag(&FLAGS_ssl_target, "");
@@ -1426,11 +1420,9 @@ TEST_F(GrpcToolTest, ConfiguringDefaultServiceConfig) {
std::bind(PrintStream, &output_stream,
std::placeholders::_1)));
absl::SetFlag(&FLAGS_default_service_config, "");
- EXPECT_THAT(
- absl::StrSplit(output_stream.str().c_str(), '\n'),
- ::testing::UnorderedElementsAre(
- "grpc.testing.EchoTestService", "grpc.reflection.v1.ServerReflection",
- "grpc.reflection.v1alpha.ServerReflection", ""));
+ EXPECT_TRUE(0 == strcmp(output_stream.str().c_str(),
+ "grpc.testing.EchoTestService\n"
+ "grpc.reflection.v1alpha.ServerReflection\n"));
ShutdownServer();
}