aboutsummaryrefslogtreecommitdiffhomepage
path: root/test
diff options
context:
space:
mode:
authorGravatar yang-g <yangg@google.com>2016-02-18 16:37:51 -0800
committerGravatar yang-g <yangg@google.com>2016-02-18 16:37:51 -0800
commit5152cd29f8541d7600b7ddc3d9db188ad59ea673 (patch)
treedc7c6693ee4c9101468a1a68bd0038e71d046029 /test
parent7d2a3e1917ebfd4e1262020b021b3bf09d238c86 (diff)
make an enum
Diffstat (limited to 'test')
-rw-r--r--test/cpp/end2end/end2end_test.cc62
-rw-r--r--test/cpp/util/test_credentials_provider.cc28
-rw-r--r--test/cpp/util/test_credentials_provider.h13
3 files changed, 69 insertions, 34 deletions
diff --git a/test/cpp/end2end/end2end_test.cc b/test/cpp/end2end/end2end_test.cc
index df9aae7436..2169afb816 100644
--- a/test/cpp/end2end/end2end_test.cc
+++ b/test/cpp/end2end/end2end_test.cc
@@ -191,14 +191,14 @@ class TestServiceImplDupPkg
class TestScenario {
public:
- TestScenario(bool proxy, const grpc::string& creds_type)
- : use_proxy(proxy), credentials_type(creds_type) {}
+ TestScenario(bool proxy, TestCredentialsType type)
+ : use_proxy(proxy), credentials_type(type) {}
void Log() const {
gpr_log(GPR_INFO, "Scenario: proxy %d, credentials %s", use_proxy,
- credentials_type.c_str());
+ TestCredentialsTypeToString(credentials_type).c_str());
}
bool use_proxy;
- const grpc::string credentials_type;
+ TestCredentialsType credentials_type;
};
class End2endTest : public ::testing::TestWithParam<TestScenario> {
@@ -223,7 +223,7 @@ class End2endTest : public ::testing::TestWithParam<TestScenario> {
// Setup server
ServerBuilder builder;
auto server_creds = GetServerCredentials(GetParam().credentials_type);
- if (GetParam().credentials_type != kInsecureCredentialsType) {
+ if (GetParam().credentials_type != INSECURE_CREDENTIALS) {
server_creds->SetAuthMetadataProcessor(processor);
}
builder.AddListeningPort(server_address_.str(), server_creds);
@@ -933,7 +933,7 @@ TEST_P(End2endTest, ChannelState) {
// Takes 10s.
TEST_P(End2endTest, ChannelStateTimeout) {
- if (GetParam().credentials_type != kInsecureCredentialsType) {
+ if (GetParam().credentials_type != INSECURE_CREDENTIALS) {
return;
}
int port = grpc_pick_unused_port_or_die();
@@ -1142,7 +1142,7 @@ class SecureEnd2endTest : public End2endTest {
protected:
SecureEnd2endTest() {
GPR_ASSERT(!GetParam().use_proxy);
- GPR_ASSERT(GetParam().credentials_type != kInsecureCredentialsType);
+ GPR_ASSERT(GetParam().credentials_type != INSECURE_CREDENTIALS);
}
};
@@ -1365,25 +1365,43 @@ TEST_P(SecureEnd2endTest, ClientAuthContext) {
EXPECT_EQ("*.test.youtube.com", ToString(auth_ctx->GetPeerIdentity()[2]));
}
-INSTANTIATE_TEST_CASE_P(
- End2end, End2endTest,
- ::testing::Values(TestScenario(false, kInsecureCredentialsType),
- TestScenario(false, kTlsCredentialsType)));
+std::vector<TestScenario> CreateTestScenarios(bool use_proxy,
+ bool test_insecure,
+ bool test_secure) {
+ std::vector<TestScenario> scenarios;
+ for (int i = INSECURE_CREDENTIALS; i < MAX_CREDENTIALS_TYPE; i++) {
+ if (i == INSECURE_CREDENTIALS && !test_insecure) {
+ continue;
+ }
+ if (i != INSECURE_CREDENTIALS && !test_secure) {
+ continue;
+ }
+ if (use_proxy) {
+ scenarios.push_back(
+ TestScenario(true, static_cast<TestCredentialsType>(i)));
+ }
+ scenarios.push_back(
+ TestScenario(false, static_cast<TestCredentialsType>(i)));
+ }
+ GPR_ASSERT(!scenarios.empty());
+ return scenarios;
+}
+
+INSTANTIATE_TEST_CASE_P(End2end, End2endTest,
+ ::testing::ValuesIn(CreateTestScenarios(false, true,
+ true)));
-INSTANTIATE_TEST_CASE_P(
- End2endServerTryCancel, End2endServerTryCancelTest,
- ::testing::Values(TestScenario(false, kInsecureCredentialsType)));
+INSTANTIATE_TEST_CASE_P(End2endServerTryCancel, End2endServerTryCancelTest,
+ ::testing::ValuesIn(CreateTestScenarios(false, true,
+ false)));
-INSTANTIATE_TEST_CASE_P(
- ProxyEnd2end, ProxyEnd2endTest,
- ::testing::Values(TestScenario(false, kInsecureCredentialsType),
- TestScenario(false, kTlsCredentialsType),
- TestScenario(true, kInsecureCredentialsType),
- TestScenario(true, kTlsCredentialsType)));
+INSTANTIATE_TEST_CASE_P(ProxyEnd2end, ProxyEnd2endTest,
+ ::testing::ValuesIn(CreateTestScenarios(true, true,
+ true)));
INSTANTIATE_TEST_CASE_P(SecureEnd2end, SecureEnd2endTest,
- ::testing::Values(TestScenario(false,
- kTlsCredentialsType)));
+ ::testing::ValuesIn(CreateTestScenarios(false, false,
+ true)));
} // namespace
} // namespace testing
diff --git a/test/cpp/util/test_credentials_provider.cc b/test/cpp/util/test_credentials_provider.cc
index f8380cdb65..9746ca692a 100644
--- a/test/cpp/util/test_credentials_provider.cc
+++ b/test/cpp/util/test_credentials_provider.cc
@@ -40,24 +40,24 @@ namespace grpc {
namespace testing {
std::shared_ptr<ChannelCredentials> GetChannelCredentials(
- const grpc::string& type, ChannelArguments* args) {
- if (type == kInsecureCredentialsType) {
+ TestCredentialsType type, ChannelArguments* args) {
+ if (type == INSECURE_CREDENTIALS) {
return InsecureChannelCredentials();
- } else if (type == kTlsCredentialsType) {
+ } else if (type == TLS_CREDENTIALS) {
SslCredentialsOptions ssl_opts = {test_root_cert, "", ""};
args->SetSslTargetNameOverride("foo.test.google.fr");
return SslCredentials(ssl_opts);
} else {
- gpr_log(GPR_ERROR, "Unsupported credentials type %s.", type.c_str());
+ gpr_log(GPR_ERROR, "Unsupported credentials type %d.", type);
}
return nullptr;
}
std::shared_ptr<ServerCredentials> GetServerCredentials(
- const grpc::string& type) {
- if (type == kInsecureCredentialsType) {
+ TestCredentialsType type) {
+ if (type == INSECURE_CREDENTIALS) {
return InsecureServerCredentials();
- } else if (type == kTlsCredentialsType) {
+ } else if (type == TLS_CREDENTIALS) {
SslServerCredentialsOptions::PemKeyCertPair pkcp = {test_server1_key,
test_server1_cert};
SslServerCredentialsOptions ssl_opts;
@@ -65,10 +65,22 @@ std::shared_ptr<ServerCredentials> GetServerCredentials(
ssl_opts.pem_key_cert_pairs.push_back(pkcp);
return SslServerCredentials(ssl_opts);
} else {
- gpr_log(GPR_ERROR, "Unsupported credentials type %s.", type.c_str());
+ gpr_log(GPR_ERROR, "Unsupported credentials type %d.", type);
}
return nullptr;
}
+grpc::string TestCredentialsTypeToString(TestCredentialsType type) {
+ switch (type) {
+ case INSECURE_CREDENTIALS:
+ return "INSECURE_CREDENTIALS";
+ case TLS_CREDENTIALS:
+ return "TLS_CREDENTIALS";
+ default:
+ break;
+ }
+ return "UNKNOWN";
+}
+
} // namespace testing
} // namespace grpc
diff --git a/test/cpp/util/test_credentials_provider.h b/test/cpp/util/test_credentials_provider.h
index 4f25e3be66..005254a652 100644
--- a/test/cpp/util/test_credentials_provider.h
+++ b/test/cpp/util/test_credentials_provider.h
@@ -43,17 +43,22 @@
namespace grpc {
namespace testing {
-const char kInsecureCredentialsType[] = "INSECURE_CREDENTIALS";
-const char kTlsCredentialsType[] = "TLS_CREDENTIALS";
+enum TestCredentialsType {
+ INSECURE_CREDENTIALS = 0,
+ TLS_CREDENTIALS,
+ MAX_CREDENTIALS_TYPE
+};
// Provide channel credentials according to the given type. Alter the channel
// arguments if needed.
std::shared_ptr<ChannelCredentials> GetChannelCredentials(
- const grpc::string& type, ChannelArguments* args);
+ TestCredentialsType type, ChannelArguments* args);
// Provide server credentials according to the given type.
std::shared_ptr<ServerCredentials> GetServerCredentials(
- const grpc::string& type);
+ TestCredentialsType type);
+
+grpc::string TestCredentialsTypeToString(TestCredentialsType type);
} // namespace testing
} // namespace grpc