1 # Copyright 2017 gRPC authors. 2 # 3 # Licensed under the Apache License, Version 2.0 (the "License"); 4 # you may not use this file except in compliance with the License. 5 # You may obtain a copy of the License at 6 # 7 # http://www.apache.org/licenses/LICENSE-2.0 8 # 9 # Unless required by applicable law or agreed to in writing, software 10 # distributed under the License is distributed on an "AS IS" BASIS, 11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 # See the License for the specific language governing permissions and 13 # limitations under the License. 14 15 licenses(["notice"]) # Apache v2 16 17 load("//bazel:grpc_build_system.bzl", "grpc_cc_library", "grpc_cc_test", "grpc_cc_binary", "grpc_package") 18 19 grpc_package(name = "test/cpp/interop") 20 21 grpc_cc_library( 22 name = "server_helper_lib", 23 srcs = [ 24 "server_helper.cc", 25 ], 26 hdrs = [ 27 "server_helper.h", 28 ], 29 external_deps = [ 30 "gflags", 31 ], 32 language = "C++", 33 deps = [ 34 "//test/cpp/util:test_util", 35 ], 36 ) 37 38 grpc_cc_binary( 39 name = "interop_server", 40 srcs = [ 41 "interop_server_bootstrap.cc", 42 ], 43 language = "C++", 44 deps = [ 45 ":interop_server_lib", 46 "//:grpc++", 47 ], 48 ) 49 50 grpc_cc_library( 51 name = "interop_server_lib", 52 srcs = [ 53 "interop_server.cc", 54 ], 55 language = "C++", 56 deps = [ 57 ":server_helper_lib", 58 "//src/proto/grpc/testing:empty_proto", 59 "//src/proto/grpc/testing:messages_proto", 60 "//src/proto/grpc/testing:test_proto", 61 "//test/cpp/util:test_config", 62 ], 63 ) 64 65 grpc_cc_library( 66 name = "client_helper_lib", 67 srcs = [ 68 "client_helper.cc", 69 "interop_client.cc", 70 ], 71 hdrs = [ 72 "client_helper.h", 73 "interop_client.h", 74 ], 75 language = "C++", 76 deps = [ 77 "//src/proto/grpc/testing:empty_proto", 78 "//src/proto/grpc/testing:messages_proto", 79 "//src/proto/grpc/testing:test_proto", 80 "//test/core/security:oauth2_utils", 81 "//test/cpp/util:test_config", 82 "//test/cpp/util:test_util", 83 ], 84 ) 85 86 grpc_cc_library( 87 name = "interop_client_main", 88 srcs = [ 89 "client.cc", 90 ], 91 language = "C++", 92 deps = [ 93 ":client_helper_lib", 94 ], 95 ) 96 97 grpc_cc_binary( 98 name = "interop_client", 99 language = "C++", 100 deps = [ 101 ":interop_client_main", 102 "//:grpc++", 103 ], 104 ) 105 106 grpc_cc_binary( 107 name = "reconnect_interop_client", 108 srcs = [ 109 "reconnect_interop_client.cc", 110 ], 111 deps = [ 112 ":client_helper_lib", 113 "//:grpc++", 114 "//test/core/util:grpc_test_util", 115 ], 116 ) 117 118 grpc_cc_binary( 119 name = "reconnect_interop_server", 120 srcs = [ 121 "reconnect_interop_server.cc", 122 ], 123 language = "C++", 124 deps = [ 125 ":interop_server_lib", 126 "//:grpc++", 127 "//test/core/util:grpc_test_util", 128 ], 129 ) 130 131 grpc_cc_binary( 132 name = "stress_test", 133 srcs = [ 134 "stress_interop_client.cc", 135 "stress_interop_client.h", 136 "stress_test.cc", 137 ], 138 deps = [ 139 ":client_helper_lib", 140 "//:grpc++", 141 "//test/cpp/util:metrics_server_lib", 142 "//test/cpp/util:test_config", 143 ], 144 ) 145