grpc/test/cpp/naming
Alex Polcyn 3c5e12de08 Remove the C++ test dependency on dig and dnsutils 2018-03-06 11:52:58 -08:00
..
BUILD Remove the C++ test dependency on dig and dnsutils 2018-03-06 11:52:58 -08:00
README.md Query for TXT service configs with _gprc_config prefix 2017-11-15 10:37:28 -08:00
create_private_dns_zone.sh Regenerate projects 2018-02-07 11:45:34 -08:00
gen_build_yaml.py Add c-ares resolver tests against GCE DNS, using the unit test. 2017-09-27 16:47:56 -07:00
generate_resolver_component_tests.bzl Remove the C++ test dependency on dig and dnsutils 2018-03-06 11:52:58 -08:00
private_dns_zone_init.sh Regenerate projects 2018-02-07 11:45:34 -08:00
resolver_component_test.cc Convert resolver API to C++. 2018-02-08 10:26:46 -08:00
resolver_component_tests_runner.sh Remove the C++ test dependency on dig and dnsutils 2018-03-06 11:52:58 -08:00
resolver_component_tests_runner_invoker.cc Remove the C++ test dependency on dig and dnsutils 2018-03-06 11:52:58 -08:00
resolver_gce_integration_tests_runner.sh Regenerate projects 2018-02-07 11:45:34 -08:00
resolver_test_record_groups.yaml Query for TXT service configs with _gprc_config prefix 2017-11-15 10:37:28 -08:00
test_dns_resolver.py Remove the C++ test dependency on dig and dnsutils 2018-03-06 11:52:58 -08:00
test_dns_server.py Add c-ares resolver tests against GCE DNS, using the unit test. 2017-09-27 16:47:56 -07:00
test_tcp_connect.py Remove the C++ test dependency on dig and dnsutils 2018-03-06 11:52:58 -08:00

README.md

Resolver Tests

This directory has tests and infrastructure for unit tests and GCE integration tests of gRPC resolver functionality.

There are two different tests here:

Resolver unit tests (resolver "component" tests)

These tests run per-change, along with the rest of the grpc unit tests. They query a local testing DNS server.

GCE integration tests

These tests use the same test binary and the same test records as the unit tests, but they run against GCE DNS (this is done by running the test on a GCE instance and not specifying an authority in uris). These tests run in a background job, which needs to be actively monitored.

Making changes to test records

After making a change to resolver_test_record_groups.yaml:

  1. Increment the "version number" in the resolver_tests_common_zone_name DNS zone (this is a yaml field at the top of resolver_test_record_groups.yaml).

  2. Regenerate projects.

  3. From the repo root, run:

$ test/cpp/naming/create_private_dns_zone.sh
$ test/cpp/naming/private_dns_zone_init.sh

Note that these commands must be ran in environment that has access to the grpc-testing GCE project.

If everything runs smoothly, then once the change is merged, the GCE DNS integration testing job will transition to the new records and continue passing.