738fe65893978de567bd5b5254c6ab8fa0a59886
[platform/upstream/grpc.git] / test / cpp / naming / resolver_test_record_groups.yaml
1 resolver_tests_common_zone_name: resolver-tests-version-4.grpctestingexp.
2 resolver_component_tests:
3 # Tests for which we enable SRV queries
4 - expected_addrs:
5   - {address: '5.5.5.5:443', is_balancer: false}
6   expected_chosen_service_config: null
7   expected_lb_policy: null
8   enable_srv_queries: true
9   enable_txt_queries: true
10   record_to_resolve: no-srv-ipv4-single-target
11   records:
12     no-srv-ipv4-single-target:
13     - {TTL: '2100', data: 5.5.5.5, type: A}
14 - expected_addrs:
15   - {address: '1.2.3.4:1234', is_balancer: true}
16   expected_chosen_service_config: null
17   expected_lb_policy: null
18   enable_srv_queries: true
19   enable_txt_queries: true
20   record_to_resolve: srv-ipv4-single-target
21   records:
22     _grpclb._tcp.srv-ipv4-single-target:
23     - {TTL: '2100', data: 0 0 1234 ipv4-single-target, type: SRV}
24     ipv4-single-target:
25     - {TTL: '2100', data: 1.2.3.4, type: A}
26 - expected_addrs:
27   - {address: '1.2.3.5:1234', is_balancer: true}
28   - {address: '1.2.3.6:1234', is_balancer: true}
29   - {address: '1.2.3.7:1234', is_balancer: true}
30   expected_chosen_service_config: null
31   expected_lb_policy: null
32   enable_srv_queries: true
33   enable_txt_queries: true
34   record_to_resolve: srv-ipv4-multi-target
35   records:
36     _grpclb._tcp.srv-ipv4-multi-target:
37     - {TTL: '2100', data: 0 0 1234 ipv4-multi-target, type: SRV}
38     ipv4-multi-target:
39     - {TTL: '2100', data: 1.2.3.5, type: A}
40     - {TTL: '2100', data: 1.2.3.6, type: A}
41     - {TTL: '2100', data: 1.2.3.7, type: A}
42 - expected_addrs:
43   - {address: '[2607:f8b0:400a:801::1001]:1234', is_balancer: true}
44   expected_chosen_service_config: null
45   expected_lb_policy: null
46   enable_srv_queries: true
47   enable_txt_queries: true
48   record_to_resolve: srv-ipv6-single-target
49   records:
50     _grpclb._tcp.srv-ipv6-single-target:
51     - {TTL: '2100', data: 0 0 1234 ipv6-single-target, type: SRV}
52     ipv6-single-target:
53     - {TTL: '2100', data: '2607:f8b0:400a:801::1001', type: AAAA}
54 - expected_addrs:
55   - {address: '[2607:f8b0:400a:801::1002]:1234', is_balancer: true}
56   - {address: '[2607:f8b0:400a:801::1003]:1234', is_balancer: true}
57   - {address: '[2607:f8b0:400a:801::1004]:1234', is_balancer: true}
58   expected_chosen_service_config: null
59   expected_lb_policy: null
60   enable_srv_queries: true
61   enable_txt_queries: true
62   record_to_resolve: srv-ipv6-multi-target
63   records:
64     _grpclb._tcp.srv-ipv6-multi-target:
65     - {TTL: '2100', data: 0 0 1234 ipv6-multi-target, type: SRV}
66     ipv6-multi-target:
67     - {TTL: '2100', data: '2607:f8b0:400a:801::1002', type: AAAA}
68     - {TTL: '2100', data: '2607:f8b0:400a:801::1003', type: AAAA}
69     - {TTL: '2100', data: '2607:f8b0:400a:801::1004', type: AAAA}
70 - expected_addrs:
71   - {address: '1.2.3.4:1234', is_balancer: true}
72   expected_chosen_service_config: '{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"SimpleService","waitForReady":true}]}]}'
73   expected_lb_policy: round_robin
74   enable_srv_queries: true
75   enable_txt_queries: true
76   record_to_resolve: srv-ipv4-simple-service-config
77   records:
78     _grpclb._tcp.srv-ipv4-simple-service-config:
79     - {TTL: '2100', data: 0 0 1234 ipv4-simple-service-config, type: SRV}
80     ipv4-simple-service-config:
81     - {TTL: '2100', data: 1.2.3.4, type: A}
82     _grpc_config.srv-ipv4-simple-service-config:
83     - {TTL: '2100', data: 'grpc_config=[{"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"SimpleService","waitForReady":true}]}]}}]',
84       type: TXT}
85 - expected_addrs:
86   - {address: '1.2.3.4:443', is_balancer: false}
87   expected_chosen_service_config: '{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"NoSrvSimpleService","waitForReady":true}]}]}'
88   expected_lb_policy: round_robin
89   enable_srv_queries: true
90   enable_txt_queries: true
91   record_to_resolve: ipv4-no-srv-simple-service-config
92   records:
93     ipv4-no-srv-simple-service-config:
94     - {TTL: '2100', data: 1.2.3.4, type: A}
95     _grpc_config.ipv4-no-srv-simple-service-config:
96     - {TTL: '2100', data: 'grpc_config=[{"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"NoSrvSimpleService","waitForReady":true}]}]}}]',
97       type: TXT}
98 - expected_addrs:
99   - {address: '1.2.3.4:443', is_balancer: false}
100   expected_chosen_service_config: null
101   expected_lb_policy: null
102   enable_srv_queries: true
103   enable_txt_queries: true
104   record_to_resolve: ipv4-no-config-for-cpp
105   records:
106     ipv4-no-config-for-cpp:
107     - {TTL: '2100', data: 1.2.3.4, type: A}
108     _grpc_config.ipv4-no-config-for-cpp:
109     - {TTL: '2100', data: 'grpc_config=[{"clientLanguage":["python"],"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"PythonService","waitForReady":true}]}]}}]',
110       type: TXT}
111 - expected_addrs:
112   - {address: '1.2.3.4:443', is_balancer: false}
113   expected_chosen_service_config: null
114   expected_lb_policy: null
115   enable_srv_queries: true
116   enable_txt_queries: true
117   record_to_resolve: ipv4-cpp-config-has-zero-percentage
118   records:
119     ipv4-cpp-config-has-zero-percentage:
120     - {TTL: '2100', data: 1.2.3.4, type: A}
121     _grpc_config.ipv4-cpp-config-has-zero-percentage:
122     - {TTL: '2100', data: 'grpc_config=[{"percentage":0,"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"CppService","waitForReady":true}]}]}}]',
123       type: TXT}
124 - expected_addrs:
125   - {address: '1.2.3.4:443', is_balancer: false}
126   expected_chosen_service_config: '{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"CppService","waitForReady":true}]}]}'
127   expected_lb_policy: round_robin
128   enable_srv_queries: true
129   enable_txt_queries: true
130   record_to_resolve: ipv4-second-language-is-cpp
131   records:
132     ipv4-second-language-is-cpp:
133     - {TTL: '2100', data: 1.2.3.4, type: A}
134     _grpc_config.ipv4-second-language-is-cpp:
135     - {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}]}]}}]',
136       type: TXT}
137 - expected_addrs:
138   - {address: '1.2.3.4:443', is_balancer: false}
139   expected_chosen_service_config: '{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"AlwaysPickedService","waitForReady":true}]}]}'
140   expected_lb_policy: round_robin
141   enable_srv_queries: true
142   enable_txt_queries: true
143   record_to_resolve: ipv4-config-with-percentages
144   records:
145     ipv4-config-with-percentages:
146     - {TTL: '2100', data: 1.2.3.4, type: A}
147     _grpc_config.ipv4-config-with-percentages:
148     - {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}]}]}}]',
149       type: TXT}
150 - expected_addrs:
151   - {address: '1.2.3.4:1234', is_balancer: true}
152   - {address: '1.2.3.4:443', is_balancer: false}
153   expected_chosen_service_config: null
154   expected_lb_policy: null
155   enable_srv_queries: true
156   enable_txt_queries: true
157   record_to_resolve: srv-ipv4-target-has-backend-and-balancer
158   records:
159     _grpclb._tcp.srv-ipv4-target-has-backend-and-balancer:
160     - {TTL: '2100', data: 0 0 1234 balancer-for-ipv4-has-backend-and-balancer, type: SRV}
161     balancer-for-ipv4-has-backend-and-balancer:
162     - {TTL: '2100', data: 1.2.3.4, type: A}
163     srv-ipv4-target-has-backend-and-balancer:
164     - {TTL: '2100', data: 1.2.3.4, type: A}
165 - expected_addrs:
166   - {address: '[2607:f8b0:400a:801::1002]:1234', is_balancer: true}
167   - {address: '[2607:f8b0:400a:801::1002]:443', is_balancer: false}
168   expected_chosen_service_config: null
169   expected_lb_policy: null
170   enable_srv_queries: true
171   enable_txt_queries: true
172   record_to_resolve: srv-ipv6-target-has-backend-and-balancer
173   records:
174     _grpclb._tcp.srv-ipv6-target-has-backend-and-balancer:
175     - {TTL: '2100', data: 0 0 1234 balancer-for-ipv6-has-backend-and-balancer, type: SRV}
176     balancer-for-ipv6-has-backend-and-balancer:
177     - {TTL: '2100', data: '2607:f8b0:400a:801::1002', type: AAAA}
178     srv-ipv6-target-has-backend-and-balancer:
179     - {TTL: '2100', data: '2607:f8b0:400a:801::1002', type: AAAA}
180 - expected_addrs:
181   - {address: '1.2.3.4:443', is_balancer: false}
182   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}]}]}'
183   expected_lb_policy: null
184   enable_srv_queries: true
185   enable_txt_queries: true
186   record_to_resolve: ipv4-config-causing-fallback-to-tcp
187   records:
188     ipv4-config-causing-fallback-to-tcp:
189     - {TTL: '2100', data: 1.2.3.4, type: A}
190     _grpc_config.ipv4-config-causing-fallback-to-tcp:
191     - {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":"FooTwelve","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooTwelve","service":"SimpleService","waitForReady":true}]},{"name":[{"method":"FooTwelve","service":"SimpleService","waitForReady":true}]}]}}]',
192       type: TXT}
193 # Tests for which we don't enable SRV queries
194 - expected_addrs:
195   - {address: '2.3.4.5:443', is_balancer: false}
196   expected_chosen_service_config: null
197   expected_lb_policy: null
198   enable_srv_queries: false
199   enable_txt_queries: true
200   record_to_resolve: srv-ipv4-single-target-srv-disabled
201   records:
202     _grpclb._tcp.srv-ipv4-single-target-srv-disabled:
203     - {TTL: '2100', data: 0 0 1234 ipv4-single-target-srv-disabled, type: SRV}
204     ipv4-single-target-srv-disabled:
205     - {TTL: '2100', data: 1.2.3.4, type: A}
206     srv-ipv4-single-target-srv-disabled:
207     - {TTL: '2100', data: 2.3.4.5, type: A}
208 - expected_addrs:
209   - {address: '9.2.3.5:443', is_balancer: false}
210   - {address: '9.2.3.6:443', is_balancer: false}
211   - {address: '9.2.3.7:443', is_balancer: false}
212   expected_chosen_service_config: null
213   expected_lb_policy: null
214   enable_srv_queries: false
215   enable_txt_queries: true
216   record_to_resolve: srv-ipv4-multi-target-srv-disabled
217   records:
218     _grpclb._tcp.srv-ipv4-multi-target-srv-disabled:
219     - {TTL: '2100', data: 0 0 1234 ipv4-multi-target-srv-disabled, type: SRV}
220     ipv4-multi-target-srv-disabled:
221     - {TTL: '2100', data: 1.2.3.5, type: A}
222     - {TTL: '2100', data: 1.2.3.6, type: A}
223     - {TTL: '2100', data: 1.2.3.7, type: A}
224     srv-ipv4-multi-target-srv-disabled:
225     - {TTL: '2100', data: 9.2.3.5, type: A}
226     - {TTL: '2100', data: 9.2.3.6, type: A}
227     - {TTL: '2100', data: 9.2.3.7, type: A}
228 - expected_addrs:
229   - {address: '[2600::1001]:443', is_balancer: false}
230   expected_chosen_service_config: null
231   expected_lb_policy: null
232   enable_srv_queries: false
233   enable_txt_queries: true
234   record_to_resolve: srv-ipv6-single-target-srv-disabled
235   records:
236     _grpclb._tcp.srv-ipv6-single-target-srv-disabled:
237     - {TTL: '2100', data: 0 0 1234 ipv6-single-target-srv-disabled, type: SRV}
238     ipv6-single-target-srv-disabled:
239     - {TTL: '2100', data: '2607:f8b0:400a:801::1001', type: AAAA}
240     srv-ipv6-single-target-srv-disabled:
241     - {TTL: '2100', data: '2600::1001', type: AAAA}
242 - expected_addrs:
243   - {address: '[2600::1002]:443', is_balancer: false}
244   - {address: '[2600::1003]:443', is_balancer: false}
245   - {address: '[2600::1004]:443', is_balancer: false}
246   expected_chosen_service_config: null
247   expected_lb_policy: null
248   enable_srv_queries: false
249   enable_txt_queries: true
250   record_to_resolve: srv-ipv6-multi-target-srv-disabled
251   records:
252     _grpclb._tcp.srv-ipv6-multi-target-srv-disabled:
253     - {TTL: '2100', data: 0 0 1234 ipv6-multi-target-srv-disabled, type: SRV}
254     ipv6-multi-target-srv-disabled:
255     - {TTL: '2100', data: '2607:f8b0:400a:801::1002', type: AAAA}
256     - {TTL: '2100', data: '2607:f8b0:400a:801::1003', type: AAAA}
257     - {TTL: '2100', data: '2607:f8b0:400a:801::1004', type: AAAA}
258     srv-ipv6-multi-target-srv-disabled:
259     - {TTL: '2100', data: '2600::1002', type: AAAA}
260     - {TTL: '2100', data: '2600::1003', type: AAAA}
261     - {TTL: '2100', data: '2600::1004', type: AAAA}
262 - expected_addrs:
263   - {address: '5.5.3.4:443', is_balancer: false}
264   expected_chosen_service_config: '{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"SimpleService","waitForReady":true}]}]}'
265   expected_lb_policy: round_robin
266   enable_srv_queries: false
267   enable_txt_queries: true
268   record_to_resolve: srv-ipv4-simple-service-config-srv-disabled
269   records:
270     _grpclb._tcp.srv-ipv4-simple-service-config-srv-disabled:
271     - {TTL: '2100', data: 0 0 1234 ipv4-simple-service-config-srv-disabled, type: SRV}
272     ipv4-simple-service-config-srv-disabled:
273     - {TTL: '2100', data: 1.2.3.4, type: A}
274     srv-ipv4-simple-service-config-srv-disabled:
275     - {TTL: '2100', data: 5.5.3.4, type: A}
276     _grpc_config.srv-ipv4-simple-service-config-srv-disabled:
277     - {TTL: '2100', data: 'grpc_config=[{"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"SimpleService","waitForReady":true}]}]}}]',
278       type: TXT}
279 - expected_addrs:
280   - {address: '1.2.3.4:1234', is_balancer: true}
281   expected_chosen_service_config: null
282   expected_lb_policy: null
283   enable_srv_queries: true
284   enable_txt_queries: false
285   record_to_resolve: srv-ipv4-simple-service-config-txt-disabled
286   records:
287     _grpclb._tcp.srv-ipv4-simple-service-config-txt-disabled:
288     - {TTL: '2100', data: 0 0 1234 ipv4-simple-service-config-txt-disabled, type: SRV}
289     ipv4-simple-service-config-txt-disabled:
290     - {TTL: '2100', data: 1.2.3.4, type: A}
291     _grpc_config.srv-ipv4-simple-service-config-txt-disabled:
292     - {TTL: '2100', data: 'grpc_config=[{"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"SimpleService","waitForReady":true}]}]}}]',
293       type: TXT}
294 - expected_addrs:
295   - {address: '1.2.3.4:443', is_balancer: false}
296   expected_chosen_service_config: null
297   expected_lb_policy: null
298   enable_srv_queries: true
299   enable_txt_queries: false
300   record_to_resolve: ipv4-cpp-config-has-zero-percentage-txt-disabled
301   records:
302     ipv4-cpp-config-has-zero-percentage-txt-disabled:
303     - {TTL: '2100', data: 1.2.3.4, type: A}
304     _grpc_config.ipv4-cpp-config-has-zero-percentage-txt-disabled:
305     - {TTL: '2100', data: 'grpc_config=[{"percentage":0,"serviceConfig":{"loadBalancingPolicy":"round_robin","methodConfig":[{"name":[{"method":"Foo","service":"CppService","waitForReady":true}]}]}}]',
306       type: TXT}
307 - expected_addrs:
308   - {address: '1.2.3.4:443', is_balancer: false}
309   expected_chosen_service_config: null
310   expected_lb_policy: null
311   enable_srv_queries: true
312   enable_txt_queries: false
313   record_to_resolve: ipv4-second-language-is-cpp-txt-disabled
314   records:
315     ipv4-second-language-is-cpp-txt-disabled:
316     - {TTL: '2100', data: 1.2.3.4, type: A}
317     _grpc_config.ipv4-second-language-is-cpp-txt-disabled:
318     - {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}]}]}}]',
319       type: TXT}