diff options
author | 2017-12-15 13:24:55 -0800 | |
---|---|---|
committer | 2017-12-15 13:24:55 -0800 | |
commit | 9c8ea03ee3170d8513cd5ae2cd390a4bdd0e9615 (patch) | |
tree | bf4fc5aa29102e439a34738030889c097139b8db /test | |
parent | 590099c46f4edea1c9673b94f735b5326f2dd617 (diff) | |
parent | af605bae614807e36b0e7fcfa54e3c6d9de613e6 (diff) |
Merge branch 'master' of github.com:grpc/grpc into backoff_cpp
Diffstat (limited to 'test')
-rw-r--r-- | test/cpp/end2end/BUILD | 12 | ||||
-rw-r--r-- | test/cpp/util/cli_credentials.cc | 30 |
2 files changed, 32 insertions, 10 deletions
diff --git a/test/cpp/end2end/BUILD b/test/cpp/end2end/BUILD index b29a13d4fb..265f75403d 100644 --- a/test/cpp/end2end/BUILD +++ b/test/cpp/end2end/BUILD @@ -14,7 +14,7 @@ licenses(["notice"]) # Apache v2 -load("//bazel:grpc_build_system.bzl", "grpc_cc_library", "grpc_cc_test", "grpc_package") +load("//bazel:grpc_build_system.bzl", "grpc_cc_library", "grpc_cc_test", "grpc_package", "grpc_cc_binary") grpc_package(name = "test/cpp/end2end", visibility = "public") # Allows external users to implement end2end tests. @@ -66,12 +66,15 @@ grpc_cc_test( "//test/core/util:grpc_test_util", "//test/cpp/util:test_util", ], + data = [ + ":client_crash_test_server", + ], external_deps = [ "gtest", ], ) -grpc_cc_test( +grpc_cc_binary( name = "client_crash_test_server", srcs = ["client_crash_test_server.cc"], deps = [ @@ -301,9 +304,12 @@ grpc_cc_test( external_deps = [ "gtest", ], + data = [ + ":server_crash_test_client", + ], ) -grpc_cc_test( +grpc_cc_binary( name = "server_crash_test_client", srcs = ["server_crash_test_client.cc"], deps = [ diff --git a/test/cpp/util/cli_credentials.cc b/test/cpp/util/cli_credentials.cc index f1f43f8ae0..aa4eafb756 100644 --- a/test/cpp/util/cli_credentials.cc +++ b/test/cpp/util/cli_credentials.cc @@ -22,27 +22,43 @@ DEFINE_bool(enable_ssl, false, "Whether to use ssl/tls."); DEFINE_bool(use_auth, false, "Whether to create default google credentials."); +DEFINE_string( + access_token, "", + "The access token that will be sent to the server to authenticate RPCs."); namespace grpc { namespace testing { std::shared_ptr<grpc::ChannelCredentials> CliCredentials::GetCredentials() const { - if (!FLAGS_enable_ssl) { - return grpc::InsecureChannelCredentials(); - } else { + if (!FLAGS_access_token.empty()) { if (FLAGS_use_auth) { - return grpc::GoogleDefaultCredentials(); - } else { - return grpc::SslCredentials(grpc::SslCredentialsOptions()); + fprintf(stderr, + "warning: use_auth is ignored when access_token is provided."); } + + return grpc::CompositeChannelCredentials( + grpc::SslCredentials(grpc::SslCredentialsOptions()), + grpc::AccessTokenCredentials(FLAGS_access_token)); + } + + if (FLAGS_use_auth) { + return grpc::GoogleDefaultCredentials(); } + + if (FLAGS_enable_ssl) { + return grpc::SslCredentials(grpc::SslCredentialsOptions()); + } + + return grpc::InsecureChannelCredentials(); } const grpc::string CliCredentials::GetCredentialUsage() const { return " --enable_ssl ; Set whether to use tls\n" " --use_auth ; Set whether to create default google" - " credentials\n"; + " credentials\n" + " --access_token ; Set the access token in metadata," + " overrides --use_auth\n"; } } // namespace testing } // namespace grpc |