1 /*
2  *
3  * Copyright 2015-2016 gRPC authors.
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *     http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  */
18 
19 #ifndef GRPC_TEST_CPP_UTIL_CREATE_TEST_CHANNEL_H
20 #define GRPC_TEST_CPP_UTIL_CREATE_TEST_CHANNEL_H
21 
22 #include <memory>
23 
24 #include <grpcpp/security/credentials.h>
25 
26 namespace grpc {
27 class Channel;
28 
29 namespace testing {
30 
31 typedef enum { INSECURE = 0, TLS, ALTS } transport_security;
32 
33 }  // namespace testing
34 
35 std::shared_ptr<Channel> CreateTestChannel(
36     const grpc::string& server, testing::transport_security security_type);
37 
38 std::shared_ptr<Channel> CreateTestChannel(
39     const grpc::string& server, const grpc::string& override_hostname,
40     testing::transport_security security_type, bool use_prod_roots);
41 
42 std::shared_ptr<Channel> CreateTestChannel(
43     const grpc::string& server, const grpc::string& override_hostname,
44     testing::transport_security security_type, bool use_prod_roots,
45     const std::shared_ptr<CallCredentials>& creds);
46 
47 std::shared_ptr<Channel> CreateTestChannel(
48     const grpc::string& server, const grpc::string& override_hostname,
49     testing::transport_security security_type, bool use_prod_roots,
50     const std::shared_ptr<CallCredentials>& creds,
51     const ChannelArguments& args);
52 
53 std::shared_ptr<Channel> CreateTestChannel(
54     const grpc::string& server, const grpc::string& cred_type,
55     const grpc::string& override_hostname, bool use_prod_roots,
56     const std::shared_ptr<CallCredentials>& creds,
57     const ChannelArguments& args);
58 
59 std::shared_ptr<Channel> CreateTestChannel(
60     const grpc::string& server, const grpc::string& credential_type,
61     const std::shared_ptr<CallCredentials>& creds);
62 
63 }  // namespace grpc
64 
65 #endif  // GRPC_TEST_CPP_UTIL_CREATE_TEST_CHANNEL_H
66