|  | @@ -127,6 +127,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -141,6 +142,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -155,6 +157,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -169,6 +172,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -183,6 +187,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -197,6 +202,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', 'round_robin',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -211,6 +217,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', 'round_robin',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -225,6 +232,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -239,6 +247,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -253,6 +262,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', 'round_robin',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -267,6 +277,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', 'round_robin',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -281,6 +292,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -295,6 +307,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -309,6 +322,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -323,6 +337,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'False',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -337,6 +352,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'False',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -351,6 +367,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'False',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -365,6 +382,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'False',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -379,6 +397,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', 'round_robin',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'False',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -393,6 +412,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'False',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -407,6 +427,7 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'False',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 | 
	
	
		
			
				|  | @@ -421,6 +442,37 @@ current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  |    '--expected_lb_policy', '',
 | 
	
		
			
				|  |  |    '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  |    '--enable_txt_queries', 'False',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'False',
 | 
	
		
			
				|  |  | +  '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  | +current_test_subprocess.communicate()
 | 
	
		
			
				|  |  | +if current_test_subprocess.returncode != 0:
 | 
	
		
			
				|  |  | +  num_test_failures += 1
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +test_runner_log('Run test with target: %s' % 'no-srv-ipv4-single-target-inject-broken-nameservers.resolver-tests-version-4.grpctestingexp.')
 | 
	
		
			
				|  |  | +current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  | +  args.test_bin_path,
 | 
	
		
			
				|  |  | +  '--target_name', 'no-srv-ipv4-single-target-inject-broken-nameservers.resolver-tests-version-4.grpctestingexp.',
 | 
	
		
			
				|  |  | +  '--expected_addrs', '5.5.5.5:443,False',
 | 
	
		
			
				|  |  | +  '--expected_chosen_service_config', '',
 | 
	
		
			
				|  |  | +  '--expected_lb_policy', '',
 | 
	
		
			
				|  |  | +  '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  | +  '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'True',
 | 
	
		
			
				|  |  | +  '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  | +current_test_subprocess.communicate()
 | 
	
		
			
				|  |  | +if current_test_subprocess.returncode != 0:
 | 
	
		
			
				|  |  | +  num_test_failures += 1
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +test_runner_log('Run test with target: %s' % 'ipv4-config-causing-fallback-to-tcp-inject-broken-nameservers.resolver-tests-version-4.grpctestingexp.')
 | 
	
		
			
				|  |  | +current_test_subprocess = subprocess.Popen([
 | 
	
		
			
				|  |  | +  args.test_bin_path,
 | 
	
		
			
				|  |  | +  '--target_name', 'ipv4-config-causing-fallback-to-tcp-inject-broken-nameservers.resolver-tests-version-4.grpctestingexp.',
 | 
	
		
			
				|  |  | +  '--expected_addrs', '1.2.3.4:443,False',
 | 
	
		
			
				|  |  | +  '--expected_chosen_service_config', '{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooTwo","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooThree","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooFour","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooFive","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooSix","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooSeven","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooEight","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooNine","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooTen","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooEleven","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooTwelve","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooTwelve","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooTwelve","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooTwelve","service":"SimpleService","waitForReady":true}]}]}',
 | 
	
		
			
				|  |  | +  '--expected_lb_policy', '',
 | 
	
		
			
				|  |  | +  '--enable_srv_queries', 'True',
 | 
	
		
			
				|  |  | +  '--enable_txt_queries', 'True',
 | 
	
		
			
				|  |  | +  '--inject_broken_nameserver_list', 'True',
 | 
	
		
			
				|  |  |    '--local_dns_server_address', '127.0.0.1:%d' % args.dns_server_port])
 | 
	
		
			
				|  |  |  current_test_subprocess.communicate()
 | 
	
		
			
				|  |  |  if current_test_subprocess.returncode != 0:
 |