aboutsummaryrefslogtreecommitdiffhomepage
path: root/test
diff options
context:
space:
mode:
authorGravatar David Garcia Quintas <dgq@google.com>2017-12-15 13:24:55 -0800
committerGravatar David Garcia Quintas <dgq@google.com>2017-12-15 13:24:55 -0800
commit9c8ea03ee3170d8513cd5ae2cd390a4bdd0e9615 (patch)
treebf4fc5aa29102e439a34738030889c097139b8db /test
parent590099c46f4edea1c9673b94f735b5326f2dd617 (diff)
parentaf605bae614807e36b0e7fcfa54e3c6d9de613e6 (diff)
Merge branch 'master' of github.com:grpc/grpc into backoff_cpp
Diffstat (limited to 'test')
-rw-r--r--test/cpp/end2end/BUILD12
-rw-r--r--test/cpp/util/cli_credentials.cc30
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