1resolver_tests_common_zone_name: resolver-tests-version-4.grpctestingexp. 2resolver_component_tests: 3# Tests for which we enable SRV queries 4- expected_addrs: 5 - {address: '5.5.5.5:443', is_balancer: false} 6 do_ordered_address_comparison: false 7 expected_chosen_service_config: null 8 expected_service_config_error: null 9 expected_lb_policy: null 10 enable_srv_queries: true 11 enable_txt_queries: true 12 inject_broken_nameserver_list: false 13 record_to_resolve: no-srv-ipv4-single-target 14 records: 15 no-srv-ipv4-single-target: 16 - {TTL: '2100', data: 5.5.5.5, type: A} 17- expected_addrs: 18 - {address: '1.2.3.4:1234', is_balancer: true} 19 do_ordered_address_comparison: false 20 expected_chosen_service_config: null 21 expected_service_config_error: null 22 expected_lb_policy: null 23 enable_srv_queries: true 24 enable_txt_queries: true 25 inject_broken_nameserver_list: false 26 record_to_resolve: srv-ipv4-single-target 27 records: 28 _grpclb._tcp.srv-ipv4-single-target: 29 - {TTL: '2100', data: 0 0 1234 ipv4-single-target, type: SRV} 30 ipv4-single-target: 31 - {TTL: '2100', data: 1.2.3.4, type: A} 32- expected_addrs: 33 - {address: '1.2.3.5:1234', is_balancer: true} 34 - {address: '1.2.3.6:1234', is_balancer: true} 35 - {address: '1.2.3.7:1234', is_balancer: true} 36 do_ordered_address_comparison: false 37 expected_chosen_service_config: null 38 expected_service_config_error: null 39 expected_lb_policy: null 40 enable_srv_queries: true 41 enable_txt_queries: true 42 inject_broken_nameserver_list: false 43 record_to_resolve: srv-ipv4-multi-target 44 records: 45 _grpclb._tcp.srv-ipv4-multi-target: 46 - {TTL: '2100', data: 0 0 1234 ipv4-multi-target, type: SRV} 47 ipv4-multi-target: 48 - {TTL: '2100', data: 1.2.3.5, type: A} 49 - {TTL: '2100', data: 1.2.3.6, type: A} 50 - {TTL: '2100', data: 1.2.3.7, type: A} 51- expected_addrs: 52 - {address: '[2607:f8b0:400a:801::1001]:1234', is_balancer: true} 53 do_ordered_address_comparison: false 54 expected_chosen_service_config: null 55 expected_service_config_error: null 56 expected_lb_policy: null 57 enable_srv_queries: true 58 enable_txt_queries: true 59 inject_broken_nameserver_list: false 60 record_to_resolve: srv-ipv6-single-target 61 records: 62 _grpclb._tcp.srv-ipv6-single-target: 63 - {TTL: '2100', data: 0 0 1234 ipv6-single-target, type: SRV} 64 ipv6-single-target: 65 - {TTL: '2100', data: '2607:f8b0:400a:801::1001', type: AAAA} 66- expected_addrs: 67 - {address: '[2607:f8b0:400a:801::1002]:1234', is_balancer: true} 68 - {address: '[2607:f8b0:400a:801::1003]:1234', is_balancer: true} 69 - {address: '[2607:f8b0:400a:801::1004]:1234', is_balancer: true} 70 do_ordered_address_comparison: false 71 expected_chosen_service_config: null 72 expected_service_config_error: null 73 expected_lb_policy: null 74 enable_srv_queries: true 75 enable_txt_queries: true 76 inject_broken_nameserver_list: false 77 record_to_resolve: srv-ipv6-multi-target 78 records: 79 _grpclb._tcp.srv-ipv6-multi-target: 80 - {TTL: '2100', data: 0 0 1234 ipv6-multi-target, type: SRV} 81 ipv6-multi-target: 82 - {TTL: '2100', data: '2607:f8b0:400a:801::1002', type: AAAA} 83 - {TTL: '2100', data: '2607:f8b0:400a:801::1003', type: AAAA} 84 - {TTL: '2100', data: '2607:f8b0:400a:801::1004', type: AAAA} 85- expected_addrs: 86 - {address: '1.2.3.4:1234', is_balancer: true} 87 do_ordered_address_comparison: false 88 expected_chosen_service_config: '{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"SimpleService"}],"waitForReady":true}]}' 89 expected_service_config_error: null 90 expected_lb_policy: round_robin 91 enable_srv_queries: true 92 enable_txt_queries: true 93 inject_broken_nameserver_list: false 94 record_to_resolve: srv-ipv4-simple-service-config 95 records: 96 _grpclb._tcp.srv-ipv4-simple-service-config: 97 - {TTL: '2100', data: 0 0 1234 ipv4-simple-service-config, type: SRV} 98 ipv4-simple-service-config: 99 - {TTL: '2100', data: 1.2.3.4, type: A} 100 _grpc_config.srv-ipv4-simple-service-config: 101 - {TTL: '2100', data: 'grpc_config=[{"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"SimpleService"}],"waitForReady":true}]}}]', 102 type: TXT} 103- expected_addrs: 104 - {address: '1.2.3.4:443', is_balancer: false} 105 do_ordered_address_comparison: false 106 expected_chosen_service_config: '{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"NoSrvSimpleService"}],"waitForReady":true}]}' 107 expected_service_config_error: null 108 expected_lb_policy: round_robin 109 enable_srv_queries: true 110 enable_txt_queries: true 111 inject_broken_nameserver_list: false 112 record_to_resolve: ipv4-no-srv-simple-service-config 113 records: 114 ipv4-no-srv-simple-service-config: 115 - {TTL: '2100', data: 1.2.3.4, type: A} 116 _grpc_config.ipv4-no-srv-simple-service-config: 117 - {TTL: '2100', data: 'grpc_config=[{"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"NoSrvSimpleService"}],"waitForReady":true}]}}]', 118 type: TXT} 119- expected_addrs: 120 - {address: '1.2.3.4:443', is_balancer: false} 121 do_ordered_address_comparison: false 122 expected_chosen_service_config: null 123 expected_service_config_error: null 124 expected_lb_policy: null 125 enable_srv_queries: true 126 enable_txt_queries: true 127 inject_broken_nameserver_list: false 128 record_to_resolve: ipv4-no-config-for-cpp 129 records: 130 ipv4-no-config-for-cpp: 131 - {TTL: '2100', data: 1.2.3.4, type: A} 132 _grpc_config.ipv4-no-config-for-cpp: 133 - {TTL: '2100', data: 'grpc_config=[{"clientLanguage":["python"],"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"PythonService"}],"waitForReady":true}]}}]', 134 type: TXT} 135- expected_addrs: 136 - {address: '1.2.3.4:443', is_balancer: false} 137 do_ordered_address_comparison: false 138 expected_chosen_service_config: null 139 expected_service_config_error: null 140 expected_lb_policy: null 141 enable_srv_queries: true 142 enable_txt_queries: true 143 inject_broken_nameserver_list: false 144 record_to_resolve: ipv4-cpp-config-has-zero-percentage 145 records: 146 ipv4-cpp-config-has-zero-percentage: 147 - {TTL: '2100', data: 1.2.3.4, type: A} 148 _grpc_config.ipv4-cpp-config-has-zero-percentage: 149 - {TTL: '2100', data: 'grpc_config=[{"percentage":0,"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"CppService"}],"waitForReady":true}]}}]', 150 type: TXT} 151- expected_addrs: 152 - {address: '1.2.3.4:443', is_balancer: false} 153 do_ordered_address_comparison: false 154 expected_chosen_service_config: '{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"CppService"}],"waitForReady":true}]}' 155 expected_service_config_error: null 156 expected_lb_policy: round_robin 157 enable_srv_queries: true 158 enable_txt_queries: true 159 inject_broken_nameserver_list: false 160 record_to_resolve: ipv4-second-language-is-cpp 161 records: 162 ipv4-second-language-is-cpp: 163 - {TTL: '2100', data: 1.2.3.4, type: A} 164 _grpc_config.ipv4-second-language-is-cpp: 165 - {TTL: '2100', data: 'grpc_config=[{"clientLanguage":["go"],"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"GoService"}],"waitForReady":true}]}},{"clientLanguage":["c++"],"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"CppService"}],"waitForReady":true}]}}]', 166 type: TXT} 167- expected_addrs: 168 - {address: '1.2.3.4:443', is_balancer: false} 169 do_ordered_address_comparison: false 170 expected_chosen_service_config: '{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"AlwaysPickedService"}],"waitForReady":true}]}' 171 expected_service_config_error: null 172 expected_lb_policy: round_robin 173 enable_srv_queries: true 174 enable_txt_queries: true 175 inject_broken_nameserver_list: false 176 record_to_resolve: ipv4-config-with-percentages 177 records: 178 ipv4-config-with-percentages: 179 - {TTL: '2100', data: 1.2.3.4, type: A} 180 _grpc_config.ipv4-config-with-percentages: 181 - {TTL: '2100', data: 'grpc_config=[{"percentage":0,"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"NeverPickedService"}],"waitForReady":true}]}},{"percentage":100,"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"AlwaysPickedService"}],"waitForReady":true}]}}]', 182 type: TXT} 183- expected_addrs: 184 - {address: '1.2.3.4:1234', is_balancer: true} 185 - {address: '1.2.3.4:443', is_balancer: false} 186 do_ordered_address_comparison: false 187 expected_chosen_service_config: null 188 expected_service_config_error: null 189 expected_lb_policy: null 190 enable_srv_queries: true 191 enable_txt_queries: true 192 inject_broken_nameserver_list: false 193 record_to_resolve: srv-ipv4-target-has-backend-and-balancer 194 records: 195 _grpclb._tcp.srv-ipv4-target-has-backend-and-balancer: 196 - {TTL: '2100', data: 0 0 1234 balancer-for-ipv4-has-backend-and-balancer, type: SRV} 197 balancer-for-ipv4-has-backend-and-balancer: 198 - {TTL: '2100', data: 1.2.3.4, type: A} 199 srv-ipv4-target-has-backend-and-balancer: 200 - {TTL: '2100', data: 1.2.3.4, type: A} 201- expected_addrs: 202 - {address: '[2607:f8b0:400a:801::1002]:1234', is_balancer: true} 203 - {address: '[2607:f8b0:400a:801::1002]:443', is_balancer: false} 204 do_ordered_address_comparison: false 205 expected_chosen_service_config: null 206 expected_service_config_error: null 207 expected_lb_policy: null 208 enable_srv_queries: true 209 enable_txt_queries: true 210 inject_broken_nameserver_list: false 211 record_to_resolve: srv-ipv6-target-has-backend-and-balancer 212 records: 213 _grpclb._tcp.srv-ipv6-target-has-backend-and-balancer: 214 - {TTL: '2100', data: 0 0 1234 balancer-for-ipv6-has-backend-and-balancer, type: SRV} 215 balancer-for-ipv6-has-backend-and-balancer: 216 - {TTL: '2100', data: '2607:f8b0:400a:801::1002', type: AAAA} 217 srv-ipv6-target-has-backend-and-balancer: 218 - {TTL: '2100', data: '2607:f8b0:400a:801::1002', type: AAAA} 219- expected_addrs: 220 - {address: '1.2.3.4:443', is_balancer: false} 221 do_ordered_address_comparison: false 222 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":"FooThirteen","service":"SimpleService"}],"waitForReady":true},{"name":[{"method":"FooFourteen","service":"SimpleService"}],"waitForReady":true},{"name":[{"method":"FooFifteen","service":"SimpleService"}],"waitForReady":true}]}' 223 expected_service_config_error: null 224 expected_lb_policy: null 225 enable_srv_queries: true 226 enable_txt_queries: true 227 inject_broken_nameserver_list: false 228 record_to_resolve: ipv4-config-causing-fallback-to-tcp 229 records: 230 ipv4-config-causing-fallback-to-tcp: 231 - {TTL: '2100', data: 1.2.3.4, type: A} 232 _grpc_config.ipv4-config-causing-fallback-to-tcp: 233 - {TTL: '2100', data: 'grpc_config=[{"serviceConfig":{"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":"FooThirteen","service":"SimpleService"}],"waitForReady":true},{"name":[{"method":"FooFourteen","service":"SimpleService"}],"waitForReady":true},{"name":[{"method":"FooFifteen","service":"SimpleService"}],"waitForReady":true}]}}]', 234 type: TXT} 235# Tests for which we don't enable SRV queries 236- expected_addrs: 237 - {address: '2.3.4.5:443', is_balancer: false} 238 do_ordered_address_comparison: false 239 expected_chosen_service_config: null 240 expected_service_config_error: null 241 expected_lb_policy: null 242 enable_srv_queries: false 243 enable_txt_queries: true 244 inject_broken_nameserver_list: false 245 record_to_resolve: srv-ipv4-single-target-srv-disabled 246 records: 247 _grpclb._tcp.srv-ipv4-single-target-srv-disabled: 248 - {TTL: '2100', data: 0 0 1234 ipv4-single-target-srv-disabled, type: SRV} 249 ipv4-single-target-srv-disabled: 250 - {TTL: '2100', data: 1.2.3.4, type: A} 251 srv-ipv4-single-target-srv-disabled: 252 - {TTL: '2100', data: 2.3.4.5, type: A} 253- expected_addrs: 254 - {address: '9.2.3.5:443', is_balancer: false} 255 - {address: '9.2.3.6:443', is_balancer: false} 256 - {address: '9.2.3.7:443', is_balancer: false} 257 do_ordered_address_comparison: false 258 expected_chosen_service_config: null 259 expected_service_config_error: null 260 expected_lb_policy: null 261 enable_srv_queries: false 262 enable_txt_queries: true 263 inject_broken_nameserver_list: false 264 record_to_resolve: srv-ipv4-multi-target-srv-disabled 265 records: 266 _grpclb._tcp.srv-ipv4-multi-target-srv-disabled: 267 - {TTL: '2100', data: 0 0 1234 ipv4-multi-target-srv-disabled, type: SRV} 268 ipv4-multi-target-srv-disabled: 269 - {TTL: '2100', data: 1.2.3.5, type: A} 270 - {TTL: '2100', data: 1.2.3.6, type: A} 271 - {TTL: '2100', data: 1.2.3.7, type: A} 272 srv-ipv4-multi-target-srv-disabled: 273 - {TTL: '2100', data: 9.2.3.5, type: A} 274 - {TTL: '2100', data: 9.2.3.6, type: A} 275 - {TTL: '2100', data: 9.2.3.7, type: A} 276- expected_addrs: 277 - {address: '[2600::1001]:443', is_balancer: false} 278 do_ordered_address_comparison: false 279 expected_chosen_service_config: null 280 expected_service_config_error: null 281 expected_lb_policy: null 282 enable_srv_queries: false 283 enable_txt_queries: true 284 inject_broken_nameserver_list: false 285 record_to_resolve: srv-ipv6-single-target-srv-disabled 286 records: 287 _grpclb._tcp.srv-ipv6-single-target-srv-disabled: 288 - {TTL: '2100', data: 0 0 1234 ipv6-single-target-srv-disabled, type: SRV} 289 ipv6-single-target-srv-disabled: 290 - {TTL: '2100', data: '2607:f8b0:400a:801::1001', type: AAAA} 291 srv-ipv6-single-target-srv-disabled: 292 - {TTL: '2100', data: '2600::1001', type: AAAA} 293- expected_addrs: 294 - {address: '[2600::1002]:443', is_balancer: false} 295 - {address: '[2600::1003]:443', is_balancer: false} 296 - {address: '[2600::1004]:443', is_balancer: false} 297 do_ordered_address_comparison: false 298 expected_chosen_service_config: null 299 expected_service_config_error: null 300 expected_lb_policy: null 301 enable_srv_queries: false 302 enable_txt_queries: true 303 inject_broken_nameserver_list: false 304 record_to_resolve: srv-ipv6-multi-target-srv-disabled 305 records: 306 _grpclb._tcp.srv-ipv6-multi-target-srv-disabled: 307 - {TTL: '2100', data: 0 0 1234 ipv6-multi-target-srv-disabled, type: SRV} 308 ipv6-multi-target-srv-disabled: 309 - {TTL: '2100', data: '2607:f8b0:400a:801::1002', type: AAAA} 310 - {TTL: '2100', data: '2607:f8b0:400a:801::1003', type: AAAA} 311 - {TTL: '2100', data: '2607:f8b0:400a:801::1004', type: AAAA} 312 srv-ipv6-multi-target-srv-disabled: 313 - {TTL: '2100', data: '2600::1002', type: AAAA} 314 - {TTL: '2100', data: '2600::1003', type: AAAA} 315 - {TTL: '2100', data: '2600::1004', type: AAAA} 316- expected_addrs: 317 - {address: '5.5.3.4:443', is_balancer: false} 318 do_ordered_address_comparison: false 319 expected_chosen_service_config: '{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"SimpleService"}],"waitForReady":true}]}' 320 expected_service_config_error: null 321 expected_lb_policy: round_robin 322 enable_srv_queries: false 323 enable_txt_queries: true 324 inject_broken_nameserver_list: false 325 record_to_resolve: srv-ipv4-simple-service-config-srv-disabled 326 records: 327 _grpclb._tcp.srv-ipv4-simple-service-config-srv-disabled: 328 - {TTL: '2100', data: 0 0 1234 ipv4-simple-service-config-srv-disabled, type: SRV} 329 ipv4-simple-service-config-srv-disabled: 330 - {TTL: '2100', data: 1.2.3.4, type: A} 331 srv-ipv4-simple-service-config-srv-disabled: 332 - {TTL: '2100', data: 5.5.3.4, type: A} 333 _grpc_config.srv-ipv4-simple-service-config-srv-disabled: 334 - {TTL: '2100', data: 'grpc_config=[{"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"SimpleService"}],"waitForReady":true}]}}]', 335 type: TXT} 336- expected_addrs: 337 - {address: '1.2.3.4:1234', is_balancer: true} 338 do_ordered_address_comparison: false 339 expected_chosen_service_config: null 340 expected_service_config_error: null 341 expected_lb_policy: null 342 enable_srv_queries: true 343 enable_txt_queries: false 344 inject_broken_nameserver_list: false 345 record_to_resolve: srv-ipv4-simple-service-config-txt-disabled 346 records: 347 _grpclb._tcp.srv-ipv4-simple-service-config-txt-disabled: 348 - {TTL: '2100', data: 0 0 1234 ipv4-simple-service-config-txt-disabled, type: SRV} 349 ipv4-simple-service-config-txt-disabled: 350 - {TTL: '2100', data: 1.2.3.4, type: A} 351 _grpc_config.srv-ipv4-simple-service-config-txt-disabled: 352 - {TTL: '2100', data: 'grpc_config=[{"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"SimpleService"}],"waitForReady":true}]}}]', 353 type: TXT} 354- expected_addrs: 355 - {address: '1.2.3.4:443', is_balancer: false} 356 do_ordered_address_comparison: false 357 expected_chosen_service_config: null 358 expected_service_config_error: null 359 expected_lb_policy: null 360 enable_srv_queries: true 361 enable_txt_queries: false 362 inject_broken_nameserver_list: false 363 record_to_resolve: ipv4-cpp-config-has-zero-percentage-txt-disabled 364 records: 365 ipv4-cpp-config-has-zero-percentage-txt-disabled: 366 - {TTL: '2100', data: 1.2.3.4, type: A} 367 _grpc_config.ipv4-cpp-config-has-zero-percentage-txt-disabled: 368 - {TTL: '2100', data: 'grpc_config=[{"percentage":0,"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"CppService"}],"waitForReady":true}]}}]', 369 type: TXT} 370- expected_addrs: 371 - {address: '1.2.3.4:443', is_balancer: false} 372 do_ordered_address_comparison: false 373 expected_chosen_service_config: null 374 expected_service_config_error: null 375 expected_lb_policy: null 376 enable_srv_queries: true 377 enable_txt_queries: false 378 inject_broken_nameserver_list: false 379 record_to_resolve: ipv4-second-language-is-cpp-txt-disabled 380 records: 381 ipv4-second-language-is-cpp-txt-disabled: 382 - {TTL: '2100', data: 1.2.3.4, type: A} 383 _grpc_config.ipv4-second-language-is-cpp-txt-disabled: 384 - {TTL: '2100', data: 'grpc_config=[{"clientLanguage":["go"],"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"GoService"}],"waitForReady":true}]}},{"clientLanguage":["c++"],"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"CppService"}],"waitForReady":true}]}}]', 385 type: TXT} 386- expected_addrs: 387 - {address: '1.2.3.4:443', is_balancer: false} 388 do_ordered_address_comparison: false 389 expected_chosen_service_config: null 390 expected_service_config_error: 'JSON parse error' 391 expected_lb_policy: null 392 enable_srv_queries: true 393 enable_txt_queries: true 394 inject_broken_nameserver_list: false 395 record_to_resolve: ipv4-svc_cfg_bad_json 396 records: 397 ipv4-svc_cfg_bad_json: 398 - {TTL: '2100', data: 1.2.3.4, type: A} 399 _grpc_config.ipv4-svc_cfg_bad_json: 400 - {TTL: '2100', data: 'grpc_config=[{]', 401 type: TXT} 402- expected_addrs: 403 - {address: '1.2.3.4:443', is_balancer: false} 404 do_ordered_address_comparison: false 405 expected_chosen_service_config: null 406 expected_service_config_error: 'field:clientLanguage error:should be of type array' 407 expected_lb_policy: null 408 enable_srv_queries: true 409 enable_txt_queries: true 410 inject_broken_nameserver_list: false 411 record_to_resolve: ipv4-svc_cfg_bad_client_language 412 records: 413 ipv4-svc_cfg_bad_client_language: 414 - {TTL: '2100', data: 1.2.3.4, type: A} 415 _grpc_config.ipv4-svc_cfg_bad_client_language: 416 - {TTL: '2100', data: 'grpc_config=[{"clientLanguage":"go","serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"GoService"}],"waitForReady":true}]}},{"clientLanguage":["c++"],"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"CppService"}],"waitForReady":true}]}}]', 417 type: TXT} 418- expected_addrs: 419 - {address: '1.2.3.4:443', is_balancer: false} 420 do_ordered_address_comparison: false 421 expected_chosen_service_config: null 422 expected_service_config_error: 'field:percentage error:should be of type number' 423 expected_lb_policy: null 424 enable_srv_queries: true 425 enable_txt_queries: true 426 inject_broken_nameserver_list: false 427 record_to_resolve: ipv4-svc_cfg_bad_percentage 428 records: 429 ipv4-svc_cfg_bad_percentage: 430 - {TTL: '2100', data: 1.2.3.4, type: A} 431 _grpc_config.ipv4-svc_cfg_bad_percentage: 432 - {TTL: '2100', data: 'grpc_config=[{"percentage":"0","serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"GoService"}],"waitForReady":true}]}},{"clientLanguage":["c++"],"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"CppService"}],"waitForReady":true}]}}]', 433 type: TXT} 434- expected_addrs: 435 - {address: '1.2.3.4:443', is_balancer: false} 436 do_ordered_address_comparison: false 437 expected_chosen_service_config: null 438 expected_service_config_error: 'field:waitForReady error:Type should be true/false' 439 expected_lb_policy: null 440 enable_srv_queries: true 441 enable_txt_queries: true 442 inject_broken_nameserver_list: false 443 record_to_resolve: ipv4-svc_cfg_bad_wait_for_ready 444 records: 445 ipv4-svc_cfg_bad_wait_for_ready: 446 - {TTL: '2100', data: 1.2.3.4, type: A} 447 _grpc_config.ipv4-svc_cfg_bad_wait_for_ready: 448 - {TTL: '2100', data: 'grpc_config=[{"serviceConfig":{"methodConfig":[{"name":[{"method":"Foo","service":"CppService"}],"waitForReady":"true"}]}}]', 449 type: TXT} 450# Tests for which we also exercise the resolver's ability to skip past a broken DNS server in its nameserver list 451- expected_addrs: 452 - {address: '5.5.5.5:443', is_balancer: false} 453 do_ordered_address_comparison: false 454 expected_chosen_service_config: null 455 expected_service_config_error: null 456 expected_lb_policy: null 457 enable_srv_queries: true 458 enable_txt_queries: true 459 inject_broken_nameserver_list: true 460 record_to_resolve: no-srv-ipv4-single-target-inject-broken-nameservers 461 records: 462 no-srv-ipv4-single-target-inject-broken-nameservers: 463 - {TTL: '2100', data: 5.5.5.5, type: A} 464- expected_addrs: 465 - {address: '1.2.3.4:443', is_balancer: false} 466 do_ordered_address_comparison: false 467 expected_chosen_service_config: '{"loadBalancingPolicy":["round_robin"]}' 468 expected_service_config_error: 'field:loadBalancingPolicy error:type should be string' 469 expected_lb_policy: null 470 enable_srv_queries: true 471 enable_txt_queries: true 472 inject_broken_nameserver_list: true 473 record_to_resolve: ipv4-config-causing-fallback-to-tcp-inject-broken-nameservers 474 records: 475 ipv4-config-causing-fallback-to-tcp-inject-broken-nameservers: 476 - {TTL: '2100', data: 1.2.3.4, type: A} 477 _grpc_config.ipv4-config-causing-fallback-to-tcp-inject-broken-nameservers: 478 - {TTL: '2100', data: 'grpc_config=[{"serviceConfig":{"loadBalancingPolicy":["round_robin"]}}]', 479 type: TXT} 480# This tests that gRPCLB addresses are sorted properly per RFC 6724. Note 481# that the only assumption that this makes is that the machine that the 482# test runs on has a functioning IPv6 loopback (which by the RFC should 483# always be preferred). Note too that the ordering of the AAAA records 484# listed under the dualstack-balancer name is important in order to 485# actually test this sorting. 486- expected_addrs: 487 - {address: '[::1]:1234', is_balancer: true} 488 - {address: '[2002::1111]:1234', is_balancer: true} 489 do_ordered_address_comparison: true 490 expected_chosen_service_config: null 491 expected_service_config_error: null 492 expected_lb_policy: null 493 enable_srv_queries: true 494 enable_txt_queries: true 495 inject_broken_nameserver_list: false 496 record_to_resolve: load-balanced-name-with-dualstack-balancer 497 records: 498 _grpclb._tcp.load-balanced-name-with-dualstack-balancer: 499 - {TTL: '2100', data: 0 0 1234 dualstack-balancer, type: SRV} 500 dualstack-balancer: 501 - {TTL: '2100', data: '2002::1111', type: AAAA} 502 - {TTL: '2100', data: '::1', type: AAAA} 503