aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/core/client_channel/resolvers/fake_resolver_test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'test/core/client_channel/resolvers/fake_resolver_test.cc')
-rw-r--r--test/core/client_channel/resolvers/fake_resolver_test.cc44
1 files changed, 27 insertions, 17 deletions
diff --git a/test/core/client_channel/resolvers/fake_resolver_test.cc b/test/core/client_channel/resolvers/fake_resolver_test.cc
index f6696bf127..3b06fe063a 100644
--- a/test/core/client_channel/resolvers/fake_resolver_test.cc
+++ b/test/core/client_channel/resolvers/fake_resolver_test.cc
@@ -22,10 +22,10 @@
#include <grpc/support/log.h>
#include <grpc/support/string_util.h>
-#include "src/core/ext/filters/client_channel/lb_policy_factory.h"
#include "src/core/ext/filters/client_channel/parse_address.h"
#include "src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h"
#include "src/core/ext/filters/client_channel/resolver_registry.h"
+#include "src/core/ext/filters/client_channel/server_address.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/gprpp/ref_counted_ptr.h"
#include "src/core/lib/iomgr/combiner.h"
@@ -63,12 +63,14 @@ void on_resolution_cb(void* arg, grpc_error* error) {
// We only check the addresses channel arg because that's the only one
// explicitly set by the test via
// FakeResolverResponseGenerator::SetResponse().
- const grpc_lb_addresses* actual_lb_addresses =
- grpc_lb_addresses_find_channel_arg(res->resolver_result);
- const grpc_lb_addresses* expected_lb_addresses =
- grpc_lb_addresses_find_channel_arg(res->expected_resolver_result);
- GPR_ASSERT(
- grpc_lb_addresses_cmp(actual_lb_addresses, expected_lb_addresses) == 0);
+ const grpc_core::ServerAddressList* actual_addresses =
+ grpc_core::FindServerAddressListChannelArg(res->resolver_result);
+ const grpc_core::ServerAddressList* expected_addresses =
+ grpc_core::FindServerAddressListChannelArg(res->expected_resolver_result);
+ GPR_ASSERT(actual_addresses->size() == expected_addresses->size());
+ for (size_t i = 0; i < expected_addresses->size(); ++i) {
+ GPR_ASSERT((*actual_addresses)[i] == (*expected_addresses)[i]);
+ }
grpc_channel_args_destroy(res->resolver_result);
grpc_channel_args_destroy(res->expected_resolver_result);
gpr_event_set(&res->ev, (void*)1);
@@ -80,27 +82,35 @@ static grpc_channel_args* create_new_resolver_result() {
const size_t num_addresses = 2;
char* uri_string;
char* balancer_name;
- // Create grpc_lb_addresses.
- grpc_lb_addresses* addresses =
- grpc_lb_addresses_create(num_addresses, nullptr);
+ // Create address list.
+ grpc_core::ServerAddressList addresses;
for (size_t i = 0; i < num_addresses; ++i) {
gpr_asprintf(&uri_string, "ipv4:127.0.0.1:100%" PRIuPTR,
test_counter * num_addresses + i);
grpc_uri* uri = grpc_uri_parse(uri_string, true);
gpr_asprintf(&balancer_name, "balancer%" PRIuPTR,
test_counter * num_addresses + i);
- grpc_lb_addresses_set_address_from_uri(
- addresses, i, uri, bool(num_addresses % 2), balancer_name, nullptr);
+ grpc_resolved_address address;
+ GPR_ASSERT(grpc_parse_uri(uri, &address));
+ grpc_core::InlinedVector<grpc_arg, 2> args_to_add;
+ const bool is_balancer = num_addresses % 2;
+ if (is_balancer) {
+ args_to_add.emplace_back(grpc_channel_arg_integer_create(
+ const_cast<char*>(GRPC_ARG_ADDRESS_IS_BALANCER), 1));
+ args_to_add.emplace_back(grpc_channel_arg_string_create(
+ const_cast<char*>(GRPC_ARG_ADDRESS_BALANCER_NAME), balancer_name));
+ }
+ grpc_channel_args* args = grpc_channel_args_copy_and_add(
+ nullptr, args_to_add.data(), args_to_add.size());
+ addresses.emplace_back(address.addr, address.len, args);
gpr_free(balancer_name);
grpc_uri_destroy(uri);
gpr_free(uri_string);
}
- // Convert grpc_lb_addresses to grpc_channel_args.
- const grpc_arg addresses_arg =
- grpc_lb_addresses_create_channel_arg(addresses);
+ // Embed the address list in channel args.
+ const grpc_arg addresses_arg = CreateServerAddressListChannelArg(&addresses);
grpc_channel_args* results =
grpc_channel_args_copy_and_add(nullptr, &addresses_arg, 1);
- grpc_lb_addresses_destroy(addresses);
++test_counter;
return results;
}
@@ -213,7 +223,7 @@ static void test_fake_resolver() {
}
int main(int argc, char** argv) {
- grpc_test_init(argc, argv);
+ grpc::testing::TestEnvironment env(argc, argv);
grpc_init();
test_fake_resolver();