19 #include <gtest/gtest.h>
30 #include "src/proto/grpc/lb/v1/load_balancer.pb.h"
36 using grpc::lb::v1::LoadBalanceRequest;
37 using grpc::lb::v1::LoadBalanceResponse;
41 static void SetUpTestCase() {
grpc_init(); }
48 GPR_ASSERT(inet_pton(AF_INET, ip_str, &ip4) == 1);
49 return std::string(
reinterpret_cast<const char*
>(&ip4),
sizeof(ip4));
53 char ip_str[46] = {0};
57 }
else if (
server.ip_size == 16) {
66 TEST_F(GrpclbTest, CreateRequest) {
79 TEST_F(GrpclbTest, ParseInitialResponse) {
82 auto* initial_response =
response.mutable_initial_response();
83 auto* client_stats_report_interval =
84 initial_response->mutable_client_stats_report_interval();
85 client_stats_report_interval->set_seconds(123);
86 client_stats_report_interval->set_nanos(456000000);
102 TEST_F(GrpclbTest, ParseResponseServerList) {
105 auto* serverlist =
response.mutable_server_list();
106 auto*
server = serverlist->add_servers();
107 server->set_ip_address(Ip4ToPackedString(
"127.0.0.1"));
109 server->set_load_balance_token(
"rate_limting");
112 server->set_ip_address(Ip4ToPackedString(
"10.0.0.1"));
114 server->set_load_balance_token(
"load_balancing");
118 encoded_response.data(), encoded_response.size());
127 EXPECT_EQ(PackedStringToIp(
resp.serverlist[0]),
"127.0.0.1");
140 int main(
int argc,
char** argv) {