1pub use ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver;
3 pub use ::aws_smithy_runtime_api::client::endpoint::EndpointFuture;
4 pub use ::aws_smithy_types::endpoint::Endpoint;
5
6#[cfg(test)]
7mod test {
8
9 #[test]
11 fn test_1() {
12 let params = crate::config::endpoint::Params::builder()
13 .region("af-south-1".to_string())
14 .use_fips(false)
15 .use_dual_stack(false)
16 .build().expect("invalid params");
17 let resolver = crate::config::endpoint::DefaultResolver::new();
18 let endpoint = resolver.resolve_endpoint(¶ms);
19 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.af-south-1.amazonaws.com");
20 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.af-south-1.amazonaws.com")
21 .build());
22 }
23
24 #[test]
26 fn test_2() {
27 let params = crate::config::endpoint::Params::builder()
28 .region("ap-east-1".to_string())
29 .use_fips(false)
30 .use_dual_stack(false)
31 .build().expect("invalid params");
32 let resolver = crate::config::endpoint::DefaultResolver::new();
33 let endpoint = resolver.resolve_endpoint(¶ms);
34 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.ap-east-1.amazonaws.com");
35 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.ap-east-1.amazonaws.com")
36 .build());
37 }
38
39 #[test]
41 fn test_3() {
42 let params = crate::config::endpoint::Params::builder()
43 .region("ap-northeast-1".to_string())
44 .use_fips(false)
45 .use_dual_stack(false)
46 .build().expect("invalid params");
47 let resolver = crate::config::endpoint::DefaultResolver::new();
48 let endpoint = resolver.resolve_endpoint(¶ms);
49 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.ap-northeast-1.amazonaws.com");
50 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.ap-northeast-1.amazonaws.com")
51 .build());
52 }
53
54 #[test]
56 fn test_4() {
57 let params = crate::config::endpoint::Params::builder()
58 .region("ap-northeast-2".to_string())
59 .use_fips(false)
60 .use_dual_stack(false)
61 .build().expect("invalid params");
62 let resolver = crate::config::endpoint::DefaultResolver::new();
63 let endpoint = resolver.resolve_endpoint(¶ms);
64 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.ap-northeast-2.amazonaws.com");
65 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.ap-northeast-2.amazonaws.com")
66 .build());
67 }
68
69 #[test]
71 fn test_5() {
72 let params = crate::config::endpoint::Params::builder()
73 .region("ap-northeast-3".to_string())
74 .use_fips(false)
75 .use_dual_stack(false)
76 .build().expect("invalid params");
77 let resolver = crate::config::endpoint::DefaultResolver::new();
78 let endpoint = resolver.resolve_endpoint(¶ms);
79 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.ap-northeast-3.amazonaws.com");
80 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.ap-northeast-3.amazonaws.com")
81 .build());
82 }
83
84 #[test]
86 fn test_6() {
87 let params = crate::config::endpoint::Params::builder()
88 .region("ap-south-1".to_string())
89 .use_fips(false)
90 .use_dual_stack(false)
91 .build().expect("invalid params");
92 let resolver = crate::config::endpoint::DefaultResolver::new();
93 let endpoint = resolver.resolve_endpoint(¶ms);
94 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.ap-south-1.amazonaws.com");
95 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.ap-south-1.amazonaws.com")
96 .build());
97 }
98
99 #[test]
101 fn test_7() {
102 let params = crate::config::endpoint::Params::builder()
103 .region("ap-southeast-1".to_string())
104 .use_fips(false)
105 .use_dual_stack(false)
106 .build().expect("invalid params");
107 let resolver = crate::config::endpoint::DefaultResolver::new();
108 let endpoint = resolver.resolve_endpoint(¶ms);
109 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.ap-southeast-1.amazonaws.com");
110 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.ap-southeast-1.amazonaws.com")
111 .build());
112 }
113
114 #[test]
116 fn test_8() {
117 let params = crate::config::endpoint::Params::builder()
118 .region("ap-southeast-2".to_string())
119 .use_fips(false)
120 .use_dual_stack(false)
121 .build().expect("invalid params");
122 let resolver = crate::config::endpoint::DefaultResolver::new();
123 let endpoint = resolver.resolve_endpoint(¶ms);
124 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.ap-southeast-2.amazonaws.com");
125 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.ap-southeast-2.amazonaws.com")
126 .build());
127 }
128
129 #[test]
131 fn test_9() {
132 let params = crate::config::endpoint::Params::builder()
133 .region("ap-southeast-3".to_string())
134 .use_fips(false)
135 .use_dual_stack(false)
136 .build().expect("invalid params");
137 let resolver = crate::config::endpoint::DefaultResolver::new();
138 let endpoint = resolver.resolve_endpoint(¶ms);
139 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.ap-southeast-3.amazonaws.com");
140 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.ap-southeast-3.amazonaws.com")
141 .build());
142 }
143
144 #[test]
146 fn test_10() {
147 let params = crate::config::endpoint::Params::builder()
148 .region("aws-global".to_string())
149 .use_fips(false)
150 .use_dual_stack(false)
151 .build().expect("invalid params");
152 let resolver = crate::config::endpoint::DefaultResolver::new();
153 let endpoint = resolver.resolve_endpoint(¶ms);
154 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
155 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
156 .property("authSchemes", vec![ {
157 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
158 out.insert("name".to_string(), "sigv4".to_string().into());
159 out.insert("signingName".to_string(), "sts".to_string().into());
160 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
161 out
162 }.into()])
163 .build());
164 }
165
166 #[test]
168 fn test_11() {
169 let params = crate::config::endpoint::Params::builder()
170 .region("ca-central-1".to_string())
171 .use_fips(false)
172 .use_dual_stack(false)
173 .build().expect("invalid params");
174 let resolver = crate::config::endpoint::DefaultResolver::new();
175 let endpoint = resolver.resolve_endpoint(¶ms);
176 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.ca-central-1.amazonaws.com");
177 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.ca-central-1.amazonaws.com")
178 .build());
179 }
180
181 #[test]
183 fn test_12() {
184 let params = crate::config::endpoint::Params::builder()
185 .region("eu-central-1".to_string())
186 .use_fips(false)
187 .use_dual_stack(false)
188 .build().expect("invalid params");
189 let resolver = crate::config::endpoint::DefaultResolver::new();
190 let endpoint = resolver.resolve_endpoint(¶ms);
191 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.eu-central-1.amazonaws.com");
192 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.eu-central-1.amazonaws.com")
193 .build());
194 }
195
196 #[test]
198 fn test_13() {
199 let params = crate::config::endpoint::Params::builder()
200 .region("eu-north-1".to_string())
201 .use_fips(false)
202 .use_dual_stack(false)
203 .build().expect("invalid params");
204 let resolver = crate::config::endpoint::DefaultResolver::new();
205 let endpoint = resolver.resolve_endpoint(¶ms);
206 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.eu-north-1.amazonaws.com");
207 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.eu-north-1.amazonaws.com")
208 .build());
209 }
210
211 #[test]
213 fn test_14() {
214 let params = crate::config::endpoint::Params::builder()
215 .region("eu-south-1".to_string())
216 .use_fips(false)
217 .use_dual_stack(false)
218 .build().expect("invalid params");
219 let resolver = crate::config::endpoint::DefaultResolver::new();
220 let endpoint = resolver.resolve_endpoint(¶ms);
221 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.eu-south-1.amazonaws.com");
222 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.eu-south-1.amazonaws.com")
223 .build());
224 }
225
226 #[test]
228 fn test_15() {
229 let params = crate::config::endpoint::Params::builder()
230 .region("eu-west-1".to_string())
231 .use_fips(false)
232 .use_dual_stack(false)
233 .build().expect("invalid params");
234 let resolver = crate::config::endpoint::DefaultResolver::new();
235 let endpoint = resolver.resolve_endpoint(¶ms);
236 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.eu-west-1.amazonaws.com");
237 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.eu-west-1.amazonaws.com")
238 .build());
239 }
240
241 #[test]
243 fn test_16() {
244 let params = crate::config::endpoint::Params::builder()
245 .region("eu-west-2".to_string())
246 .use_fips(false)
247 .use_dual_stack(false)
248 .build().expect("invalid params");
249 let resolver = crate::config::endpoint::DefaultResolver::new();
250 let endpoint = resolver.resolve_endpoint(¶ms);
251 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.eu-west-2.amazonaws.com");
252 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.eu-west-2.amazonaws.com")
253 .build());
254 }
255
256 #[test]
258 fn test_17() {
259 let params = crate::config::endpoint::Params::builder()
260 .region("eu-west-3".to_string())
261 .use_fips(false)
262 .use_dual_stack(false)
263 .build().expect("invalid params");
264 let resolver = crate::config::endpoint::DefaultResolver::new();
265 let endpoint = resolver.resolve_endpoint(¶ms);
266 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.eu-west-3.amazonaws.com");
267 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.eu-west-3.amazonaws.com")
268 .build());
269 }
270
271 #[test]
273 fn test_18() {
274 let params = crate::config::endpoint::Params::builder()
275 .region("me-south-1".to_string())
276 .use_fips(false)
277 .use_dual_stack(false)
278 .build().expect("invalid params");
279 let resolver = crate::config::endpoint::DefaultResolver::new();
280 let endpoint = resolver.resolve_endpoint(¶ms);
281 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.me-south-1.amazonaws.com");
282 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.me-south-1.amazonaws.com")
283 .build());
284 }
285
286 #[test]
288 fn test_19() {
289 let params = crate::config::endpoint::Params::builder()
290 .region("sa-east-1".to_string())
291 .use_fips(false)
292 .use_dual_stack(false)
293 .build().expect("invalid params");
294 let resolver = crate::config::endpoint::DefaultResolver::new();
295 let endpoint = resolver.resolve_endpoint(¶ms);
296 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.sa-east-1.amazonaws.com");
297 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.sa-east-1.amazonaws.com")
298 .build());
299 }
300
301 #[test]
303 fn test_20() {
304 let params = crate::config::endpoint::Params::builder()
305 .region("us-east-1".to_string())
306 .use_fips(false)
307 .use_dual_stack(false)
308 .build().expect("invalid params");
309 let resolver = crate::config::endpoint::DefaultResolver::new();
310 let endpoint = resolver.resolve_endpoint(¶ms);
311 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-east-1.amazonaws.com");
312 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-east-1.amazonaws.com")
313 .build());
314 }
315
316 #[test]
318 fn test_21() {
319 let params = crate::config::endpoint::Params::builder()
320 .region("us-east-1".to_string())
321 .use_fips(true)
322 .use_dual_stack(false)
323 .build().expect("invalid params");
324 let resolver = crate::config::endpoint::DefaultResolver::new();
325 let endpoint = resolver.resolve_endpoint(¶ms);
326 let endpoint = endpoint.expect("Expected valid endpoint: https://sts-fips.us-east-1.amazonaws.com");
327 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts-fips.us-east-1.amazonaws.com")
328 .build());
329 }
330
331 #[test]
333 fn test_22() {
334 let params = crate::config::endpoint::Params::builder()
335 .region("us-east-2".to_string())
336 .use_fips(false)
337 .use_dual_stack(false)
338 .build().expect("invalid params");
339 let resolver = crate::config::endpoint::DefaultResolver::new();
340 let endpoint = resolver.resolve_endpoint(¶ms);
341 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-east-2.amazonaws.com");
342 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-east-2.amazonaws.com")
343 .build());
344 }
345
346 #[test]
348 fn test_23() {
349 let params = crate::config::endpoint::Params::builder()
350 .region("us-east-2".to_string())
351 .use_fips(true)
352 .use_dual_stack(false)
353 .build().expect("invalid params");
354 let resolver = crate::config::endpoint::DefaultResolver::new();
355 let endpoint = resolver.resolve_endpoint(¶ms);
356 let endpoint = endpoint.expect("Expected valid endpoint: https://sts-fips.us-east-2.amazonaws.com");
357 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts-fips.us-east-2.amazonaws.com")
358 .build());
359 }
360
361 #[test]
363 fn test_24() {
364 let params = crate::config::endpoint::Params::builder()
365 .region("us-west-1".to_string())
366 .use_fips(false)
367 .use_dual_stack(false)
368 .build().expect("invalid params");
369 let resolver = crate::config::endpoint::DefaultResolver::new();
370 let endpoint = resolver.resolve_endpoint(¶ms);
371 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-west-1.amazonaws.com");
372 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-west-1.amazonaws.com")
373 .build());
374 }
375
376 #[test]
378 fn test_25() {
379 let params = crate::config::endpoint::Params::builder()
380 .region("us-west-1".to_string())
381 .use_fips(true)
382 .use_dual_stack(false)
383 .build().expect("invalid params");
384 let resolver = crate::config::endpoint::DefaultResolver::new();
385 let endpoint = resolver.resolve_endpoint(¶ms);
386 let endpoint = endpoint.expect("Expected valid endpoint: https://sts-fips.us-west-1.amazonaws.com");
387 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts-fips.us-west-1.amazonaws.com")
388 .build());
389 }
390
391 #[test]
393 fn test_26() {
394 let params = crate::config::endpoint::Params::builder()
395 .region("us-west-2".to_string())
396 .use_fips(false)
397 .use_dual_stack(false)
398 .build().expect("invalid params");
399 let resolver = crate::config::endpoint::DefaultResolver::new();
400 let endpoint = resolver.resolve_endpoint(¶ms);
401 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-west-2.amazonaws.com");
402 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-west-2.amazonaws.com")
403 .build());
404 }
405
406 #[test]
408 fn test_27() {
409 let params = crate::config::endpoint::Params::builder()
410 .region("us-west-2".to_string())
411 .use_fips(true)
412 .use_dual_stack(false)
413 .build().expect("invalid params");
414 let resolver = crate::config::endpoint::DefaultResolver::new();
415 let endpoint = resolver.resolve_endpoint(¶ms);
416 let endpoint = endpoint.expect("Expected valid endpoint: https://sts-fips.us-west-2.amazonaws.com");
417 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts-fips.us-west-2.amazonaws.com")
418 .build());
419 }
420
421 #[test]
423 fn test_28() {
424 let params = crate::config::endpoint::Params::builder()
425 .region("us-east-1".to_string())
426 .use_fips(true)
427 .use_dual_stack(true)
428 .build().expect("invalid params");
429 let resolver = crate::config::endpoint::DefaultResolver::new();
430 let endpoint = resolver.resolve_endpoint(¶ms);
431 let endpoint = endpoint.expect("Expected valid endpoint: https://sts-fips.us-east-1.api.aws");
432 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts-fips.us-east-1.api.aws")
433 .build());
434 }
435
436 #[test]
438 fn test_29() {
439 let params = crate::config::endpoint::Params::builder()
440 .region("us-east-1".to_string())
441 .use_fips(false)
442 .use_dual_stack(true)
443 .build().expect("invalid params");
444 let resolver = crate::config::endpoint::DefaultResolver::new();
445 let endpoint = resolver.resolve_endpoint(¶ms);
446 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-east-1.api.aws");
447 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-east-1.api.aws")
448 .build());
449 }
450
451 #[test]
453 fn test_30() {
454 let params = crate::config::endpoint::Params::builder()
455 .region("cn-north-1".to_string())
456 .use_fips(false)
457 .use_dual_stack(false)
458 .build().expect("invalid params");
459 let resolver = crate::config::endpoint::DefaultResolver::new();
460 let endpoint = resolver.resolve_endpoint(¶ms);
461 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.cn-north-1.amazonaws.com.cn");
462 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.cn-north-1.amazonaws.com.cn")
463 .build());
464 }
465
466 #[test]
468 fn test_31() {
469 let params = crate::config::endpoint::Params::builder()
470 .region("cn-northwest-1".to_string())
471 .use_fips(false)
472 .use_dual_stack(false)
473 .build().expect("invalid params");
474 let resolver = crate::config::endpoint::DefaultResolver::new();
475 let endpoint = resolver.resolve_endpoint(¶ms);
476 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.cn-northwest-1.amazonaws.com.cn");
477 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.cn-northwest-1.amazonaws.com.cn")
478 .build());
479 }
480
481 #[test]
483 fn test_32() {
484 let params = crate::config::endpoint::Params::builder()
485 .region("cn-north-1".to_string())
486 .use_fips(true)
487 .use_dual_stack(true)
488 .build().expect("invalid params");
489 let resolver = crate::config::endpoint::DefaultResolver::new();
490 let endpoint = resolver.resolve_endpoint(¶ms);
491 let endpoint = endpoint.expect("Expected valid endpoint: https://sts-fips.cn-north-1.api.amazonwebservices.com.cn");
492 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts-fips.cn-north-1.api.amazonwebservices.com.cn")
493 .build());
494 }
495
496 #[test]
498 fn test_33() {
499 let params = crate::config::endpoint::Params::builder()
500 .region("cn-north-1".to_string())
501 .use_fips(true)
502 .use_dual_stack(false)
503 .build().expect("invalid params");
504 let resolver = crate::config::endpoint::DefaultResolver::new();
505 let endpoint = resolver.resolve_endpoint(¶ms);
506 let endpoint = endpoint.expect("Expected valid endpoint: https://sts-fips.cn-north-1.amazonaws.com.cn");
507 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts-fips.cn-north-1.amazonaws.com.cn")
508 .build());
509 }
510
511 #[test]
513 fn test_34() {
514 let params = crate::config::endpoint::Params::builder()
515 .region("cn-north-1".to_string())
516 .use_fips(false)
517 .use_dual_stack(true)
518 .build().expect("invalid params");
519 let resolver = crate::config::endpoint::DefaultResolver::new();
520 let endpoint = resolver.resolve_endpoint(¶ms);
521 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.cn-north-1.api.amazonwebservices.com.cn");
522 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.cn-north-1.api.amazonwebservices.com.cn")
523 .build());
524 }
525
526 #[test]
528 fn test_35() {
529 let params = crate::config::endpoint::Params::builder()
530 .region("us-gov-east-1".to_string())
531 .use_fips(false)
532 .use_dual_stack(false)
533 .build().expect("invalid params");
534 let resolver = crate::config::endpoint::DefaultResolver::new();
535 let endpoint = resolver.resolve_endpoint(¶ms);
536 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-gov-east-1.amazonaws.com");
537 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-gov-east-1.amazonaws.com")
538 .build());
539 }
540
541 #[test]
543 fn test_36() {
544 let params = crate::config::endpoint::Params::builder()
545 .region("us-gov-east-1".to_string())
546 .use_fips(true)
547 .use_dual_stack(false)
548 .build().expect("invalid params");
549 let resolver = crate::config::endpoint::DefaultResolver::new();
550 let endpoint = resolver.resolve_endpoint(¶ms);
551 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-gov-east-1.amazonaws.com");
552 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-gov-east-1.amazonaws.com")
553 .build());
554 }
555
556 #[test]
558 fn test_37() {
559 let params = crate::config::endpoint::Params::builder()
560 .region("us-gov-west-1".to_string())
561 .use_fips(false)
562 .use_dual_stack(false)
563 .build().expect("invalid params");
564 let resolver = crate::config::endpoint::DefaultResolver::new();
565 let endpoint = resolver.resolve_endpoint(¶ms);
566 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-gov-west-1.amazonaws.com");
567 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-gov-west-1.amazonaws.com")
568 .build());
569 }
570
571 #[test]
573 fn test_38() {
574 let params = crate::config::endpoint::Params::builder()
575 .region("us-gov-west-1".to_string())
576 .use_fips(true)
577 .use_dual_stack(false)
578 .build().expect("invalid params");
579 let resolver = crate::config::endpoint::DefaultResolver::new();
580 let endpoint = resolver.resolve_endpoint(¶ms);
581 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-gov-west-1.amazonaws.com");
582 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-gov-west-1.amazonaws.com")
583 .build());
584 }
585
586 #[test]
588 fn test_39() {
589 let params = crate::config::endpoint::Params::builder()
590 .region("us-gov-east-1".to_string())
591 .use_fips(true)
592 .use_dual_stack(true)
593 .build().expect("invalid params");
594 let resolver = crate::config::endpoint::DefaultResolver::new();
595 let endpoint = resolver.resolve_endpoint(¶ms);
596 let endpoint = endpoint.expect("Expected valid endpoint: https://sts-fips.us-gov-east-1.api.aws");
597 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts-fips.us-gov-east-1.api.aws")
598 .build());
599 }
600
601 #[test]
603 fn test_40() {
604 let params = crate::config::endpoint::Params::builder()
605 .region("us-gov-east-1".to_string())
606 .use_fips(false)
607 .use_dual_stack(true)
608 .build().expect("invalid params");
609 let resolver = crate::config::endpoint::DefaultResolver::new();
610 let endpoint = resolver.resolve_endpoint(¶ms);
611 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-gov-east-1.api.aws");
612 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-gov-east-1.api.aws")
613 .build());
614 }
615
616 #[test]
618 fn test_41() {
619 let params = crate::config::endpoint::Params::builder()
620 .region("us-iso-east-1".to_string())
621 .use_fips(false)
622 .use_dual_stack(false)
623 .build().expect("invalid params");
624 let resolver = crate::config::endpoint::DefaultResolver::new();
625 let endpoint = resolver.resolve_endpoint(¶ms);
626 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-iso-east-1.c2s.ic.gov");
627 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-iso-east-1.c2s.ic.gov")
628 .build());
629 }
630
631 #[test]
633 fn test_42() {
634 let params = crate::config::endpoint::Params::builder()
635 .region("us-iso-west-1".to_string())
636 .use_fips(false)
637 .use_dual_stack(false)
638 .build().expect("invalid params");
639 let resolver = crate::config::endpoint::DefaultResolver::new();
640 let endpoint = resolver.resolve_endpoint(¶ms);
641 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-iso-west-1.c2s.ic.gov");
642 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-iso-west-1.c2s.ic.gov")
643 .build());
644 }
645
646 #[test]
648 fn test_43() {
649 let params = crate::config::endpoint::Params::builder()
650 .region("us-iso-east-1".to_string())
651 .use_fips(true)
652 .use_dual_stack(false)
653 .build().expect("invalid params");
654 let resolver = crate::config::endpoint::DefaultResolver::new();
655 let endpoint = resolver.resolve_endpoint(¶ms);
656 let endpoint = endpoint.expect("Expected valid endpoint: https://sts-fips.us-iso-east-1.c2s.ic.gov");
657 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts-fips.us-iso-east-1.c2s.ic.gov")
658 .build());
659 }
660
661 #[test]
663 fn test_44() {
664 let params = crate::config::endpoint::Params::builder()
665 .region("us-isob-east-1".to_string())
666 .use_fips(false)
667 .use_dual_stack(false)
668 .build().expect("invalid params");
669 let resolver = crate::config::endpoint::DefaultResolver::new();
670 let endpoint = resolver.resolve_endpoint(¶ms);
671 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-isob-east-1.sc2s.sgov.gov");
672 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-isob-east-1.sc2s.sgov.gov")
673 .build());
674 }
675
676 #[test]
678 fn test_45() {
679 let params = crate::config::endpoint::Params::builder()
680 .region("us-isob-east-1".to_string())
681 .use_fips(true)
682 .use_dual_stack(false)
683 .build().expect("invalid params");
684 let resolver = crate::config::endpoint::DefaultResolver::new();
685 let endpoint = resolver.resolve_endpoint(¶ms);
686 let endpoint = endpoint.expect("Expected valid endpoint: https://sts-fips.us-isob-east-1.sc2s.sgov.gov");
687 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts-fips.us-isob-east-1.sc2s.sgov.gov")
688 .build());
689 }
690
691 #[test]
693 fn test_46() {
694 let params = crate::config::endpoint::Params::builder()
695 .region("us-east-1".to_string())
696 .use_fips(false)
697 .use_dual_stack(false)
698 .endpoint("https://example.com".to_string())
699 .build().expect("invalid params");
700 let resolver = crate::config::endpoint::DefaultResolver::new();
701 let endpoint = resolver.resolve_endpoint(¶ms);
702 let endpoint = endpoint.expect("Expected valid endpoint: https://example.com");
703 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://example.com")
704 .build());
705 }
706
707 #[test]
709 fn test_47() {
710 let params = crate::config::endpoint::Params::builder()
711 .use_fips(false)
712 .use_dual_stack(false)
713 .endpoint("https://example.com".to_string())
714 .build().expect("invalid params");
715 let resolver = crate::config::endpoint::DefaultResolver::new();
716 let endpoint = resolver.resolve_endpoint(¶ms);
717 let endpoint = endpoint.expect("Expected valid endpoint: https://example.com");
718 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://example.com")
719 .build());
720 }
721
722 #[test]
724 fn test_48() {
725 let params = crate::config::endpoint::Params::builder()
726 .region("us-east-1".to_string())
727 .use_fips(true)
728 .use_dual_stack(false)
729 .endpoint("https://example.com".to_string())
730 .build().expect("invalid params");
731 let resolver = crate::config::endpoint::DefaultResolver::new();
732 let endpoint = resolver.resolve_endpoint(¶ms);
733 let error = endpoint.expect_err("expected error: Invalid Configuration: FIPS and custom endpoint are not supported [For custom endpoint with fips enabled and dualstack disabled]");
734 assert_eq!(format!("{}", error), "Invalid Configuration: FIPS and custom endpoint are not supported")
735 }
736
737 #[test]
739 fn test_49() {
740 let params = crate::config::endpoint::Params::builder()
741 .region("us-east-1".to_string())
742 .use_fips(false)
743 .use_dual_stack(true)
744 .endpoint("https://example.com".to_string())
745 .build().expect("invalid params");
746 let resolver = crate::config::endpoint::DefaultResolver::new();
747 let endpoint = resolver.resolve_endpoint(¶ms);
748 let error = endpoint.expect_err("expected error: Invalid Configuration: Dualstack and custom endpoint are not supported [For custom endpoint with fips disabled and dualstack enabled]");
749 assert_eq!(format!("{}", error), "Invalid Configuration: Dualstack and custom endpoint are not supported")
750 }
751
752 #[test]
754 fn test_50() {
755 let params = crate::config::endpoint::Params::builder()
756 .build().expect("invalid params");
757 let resolver = crate::config::endpoint::DefaultResolver::new();
758 let endpoint = resolver.resolve_endpoint(¶ms);
759 let error = endpoint.expect_err("expected error: Invalid Configuration: Missing Region [Missing region]");
760 assert_eq!(format!("{}", error), "Invalid Configuration: Missing Region")
761 }
762
763 #[test]
765 fn test_51() {
766 let params = crate::config::endpoint::Params::builder()
767 .region("ap-northeast-1".to_string())
768 .use_fips(false)
769 .use_dual_stack(false)
770 .use_global_endpoint(true)
771 .build().expect("invalid params");
772 let resolver = crate::config::endpoint::DefaultResolver::new();
773 let endpoint = resolver.resolve_endpoint(¶ms);
774 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
775 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
776 .property("authSchemes", vec![ {
777 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
778 out.insert("name".to_string(), "sigv4".to_string().into());
779 out.insert("signingName".to_string(), "sts".to_string().into());
780 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
781 out
782 }.into()])
783 .build());
784 }
785
786 #[test]
788 fn test_52() {
789 let params = crate::config::endpoint::Params::builder()
790 .region("ap-south-1".to_string())
791 .use_fips(false)
792 .use_dual_stack(false)
793 .use_global_endpoint(true)
794 .build().expect("invalid params");
795 let resolver = crate::config::endpoint::DefaultResolver::new();
796 let endpoint = resolver.resolve_endpoint(¶ms);
797 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
798 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
799 .property("authSchemes", vec![ {
800 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
801 out.insert("name".to_string(), "sigv4".to_string().into());
802 out.insert("signingName".to_string(), "sts".to_string().into());
803 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
804 out
805 }.into()])
806 .build());
807 }
808
809 #[test]
811 fn test_53() {
812 let params = crate::config::endpoint::Params::builder()
813 .region("ap-southeast-1".to_string())
814 .use_fips(false)
815 .use_dual_stack(false)
816 .use_global_endpoint(true)
817 .build().expect("invalid params");
818 let resolver = crate::config::endpoint::DefaultResolver::new();
819 let endpoint = resolver.resolve_endpoint(¶ms);
820 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
821 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
822 .property("authSchemes", vec![ {
823 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
824 out.insert("name".to_string(), "sigv4".to_string().into());
825 out.insert("signingName".to_string(), "sts".to_string().into());
826 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
827 out
828 }.into()])
829 .build());
830 }
831
832 #[test]
834 fn test_54() {
835 let params = crate::config::endpoint::Params::builder()
836 .region("ap-southeast-2".to_string())
837 .use_fips(false)
838 .use_dual_stack(false)
839 .use_global_endpoint(true)
840 .build().expect("invalid params");
841 let resolver = crate::config::endpoint::DefaultResolver::new();
842 let endpoint = resolver.resolve_endpoint(¶ms);
843 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
844 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
845 .property("authSchemes", vec![ {
846 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
847 out.insert("name".to_string(), "sigv4".to_string().into());
848 out.insert("signingName".to_string(), "sts".to_string().into());
849 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
850 out
851 }.into()])
852 .build());
853 }
854
855 #[test]
857 fn test_55() {
858 let params = crate::config::endpoint::Params::builder()
859 .region("aws-global".to_string())
860 .use_fips(false)
861 .use_dual_stack(false)
862 .use_global_endpoint(true)
863 .build().expect("invalid params");
864 let resolver = crate::config::endpoint::DefaultResolver::new();
865 let endpoint = resolver.resolve_endpoint(¶ms);
866 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
867 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
868 .property("authSchemes", vec![ {
869 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
870 out.insert("name".to_string(), "sigv4".to_string().into());
871 out.insert("signingName".to_string(), "sts".to_string().into());
872 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
873 out
874 }.into()])
875 .build());
876 }
877
878 #[test]
880 fn test_56() {
881 let params = crate::config::endpoint::Params::builder()
882 .region("ca-central-1".to_string())
883 .use_fips(false)
884 .use_dual_stack(false)
885 .use_global_endpoint(true)
886 .build().expect("invalid params");
887 let resolver = crate::config::endpoint::DefaultResolver::new();
888 let endpoint = resolver.resolve_endpoint(¶ms);
889 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
890 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
891 .property("authSchemes", vec![ {
892 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
893 out.insert("name".to_string(), "sigv4".to_string().into());
894 out.insert("signingName".to_string(), "sts".to_string().into());
895 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
896 out
897 }.into()])
898 .build());
899 }
900
901 #[test]
903 fn test_57() {
904 let params = crate::config::endpoint::Params::builder()
905 .region("eu-central-1".to_string())
906 .use_fips(false)
907 .use_dual_stack(false)
908 .use_global_endpoint(true)
909 .build().expect("invalid params");
910 let resolver = crate::config::endpoint::DefaultResolver::new();
911 let endpoint = resolver.resolve_endpoint(¶ms);
912 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
913 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
914 .property("authSchemes", vec![ {
915 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
916 out.insert("name".to_string(), "sigv4".to_string().into());
917 out.insert("signingName".to_string(), "sts".to_string().into());
918 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
919 out
920 }.into()])
921 .build());
922 }
923
924 #[test]
926 fn test_58() {
927 let params = crate::config::endpoint::Params::builder()
928 .region("eu-north-1".to_string())
929 .use_fips(false)
930 .use_dual_stack(false)
931 .use_global_endpoint(true)
932 .build().expect("invalid params");
933 let resolver = crate::config::endpoint::DefaultResolver::new();
934 let endpoint = resolver.resolve_endpoint(¶ms);
935 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
936 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
937 .property("authSchemes", vec![ {
938 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
939 out.insert("name".to_string(), "sigv4".to_string().into());
940 out.insert("signingName".to_string(), "sts".to_string().into());
941 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
942 out
943 }.into()])
944 .build());
945 }
946
947 #[test]
949 fn test_59() {
950 let params = crate::config::endpoint::Params::builder()
951 .region("eu-west-1".to_string())
952 .use_fips(false)
953 .use_dual_stack(false)
954 .use_global_endpoint(true)
955 .build().expect("invalid params");
956 let resolver = crate::config::endpoint::DefaultResolver::new();
957 let endpoint = resolver.resolve_endpoint(¶ms);
958 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
959 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
960 .property("authSchemes", vec![ {
961 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
962 out.insert("name".to_string(), "sigv4".to_string().into());
963 out.insert("signingName".to_string(), "sts".to_string().into());
964 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
965 out
966 }.into()])
967 .build());
968 }
969
970 #[test]
972 fn test_60() {
973 let params = crate::config::endpoint::Params::builder()
974 .region("eu-west-2".to_string())
975 .use_fips(false)
976 .use_dual_stack(false)
977 .use_global_endpoint(true)
978 .build().expect("invalid params");
979 let resolver = crate::config::endpoint::DefaultResolver::new();
980 let endpoint = resolver.resolve_endpoint(¶ms);
981 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
982 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
983 .property("authSchemes", vec![ {
984 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
985 out.insert("name".to_string(), "sigv4".to_string().into());
986 out.insert("signingName".to_string(), "sts".to_string().into());
987 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
988 out
989 }.into()])
990 .build());
991 }
992
993 #[test]
995 fn test_61() {
996 let params = crate::config::endpoint::Params::builder()
997 .region("eu-west-3".to_string())
998 .use_fips(false)
999 .use_dual_stack(false)
1000 .use_global_endpoint(true)
1001 .build().expect("invalid params");
1002 let resolver = crate::config::endpoint::DefaultResolver::new();
1003 let endpoint = resolver.resolve_endpoint(¶ms);
1004 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
1005 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
1006 .property("authSchemes", vec![ {
1007 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
1008 out.insert("name".to_string(), "sigv4".to_string().into());
1009 out.insert("signingName".to_string(), "sts".to_string().into());
1010 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
1011 out
1012 }.into()])
1013 .build());
1014 }
1015
1016 #[test]
1018 fn test_62() {
1019 let params = crate::config::endpoint::Params::builder()
1020 .region("sa-east-1".to_string())
1021 .use_fips(false)
1022 .use_dual_stack(false)
1023 .use_global_endpoint(true)
1024 .build().expect("invalid params");
1025 let resolver = crate::config::endpoint::DefaultResolver::new();
1026 let endpoint = resolver.resolve_endpoint(¶ms);
1027 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
1028 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
1029 .property("authSchemes", vec![ {
1030 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
1031 out.insert("name".to_string(), "sigv4".to_string().into());
1032 out.insert("signingName".to_string(), "sts".to_string().into());
1033 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
1034 out
1035 }.into()])
1036 .build());
1037 }
1038
1039 #[test]
1041 fn test_63() {
1042 let params = crate::config::endpoint::Params::builder()
1043 .region("us-east-1".to_string())
1044 .use_fips(false)
1045 .use_dual_stack(false)
1046 .use_global_endpoint(true)
1047 .build().expect("invalid params");
1048 let resolver = crate::config::endpoint::DefaultResolver::new();
1049 let endpoint = resolver.resolve_endpoint(¶ms);
1050 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
1051 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
1052 .property("authSchemes", vec![ {
1053 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
1054 out.insert("name".to_string(), "sigv4".to_string().into());
1055 out.insert("signingName".to_string(), "sts".to_string().into());
1056 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
1057 out
1058 }.into()])
1059 .build());
1060 }
1061
1062 #[test]
1064 fn test_64() {
1065 let params = crate::config::endpoint::Params::builder()
1066 .region("us-east-2".to_string())
1067 .use_fips(false)
1068 .use_dual_stack(false)
1069 .use_global_endpoint(true)
1070 .build().expect("invalid params");
1071 let resolver = crate::config::endpoint::DefaultResolver::new();
1072 let endpoint = resolver.resolve_endpoint(¶ms);
1073 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
1074 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
1075 .property("authSchemes", vec![ {
1076 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
1077 out.insert("name".to_string(), "sigv4".to_string().into());
1078 out.insert("signingName".to_string(), "sts".to_string().into());
1079 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
1080 out
1081 }.into()])
1082 .build());
1083 }
1084
1085 #[test]
1087 fn test_65() {
1088 let params = crate::config::endpoint::Params::builder()
1089 .region("us-west-1".to_string())
1090 .use_fips(false)
1091 .use_dual_stack(false)
1092 .use_global_endpoint(true)
1093 .build().expect("invalid params");
1094 let resolver = crate::config::endpoint::DefaultResolver::new();
1095 let endpoint = resolver.resolve_endpoint(¶ms);
1096 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
1097 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
1098 .property("authSchemes", vec![ {
1099 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
1100 out.insert("name".to_string(), "sigv4".to_string().into());
1101 out.insert("signingName".to_string(), "sts".to_string().into());
1102 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
1103 out
1104 }.into()])
1105 .build());
1106 }
1107
1108 #[test]
1110 fn test_66() {
1111 let params = crate::config::endpoint::Params::builder()
1112 .region("us-west-2".to_string())
1113 .use_fips(false)
1114 .use_dual_stack(false)
1115 .use_global_endpoint(true)
1116 .build().expect("invalid params");
1117 let resolver = crate::config::endpoint::DefaultResolver::new();
1118 let endpoint = resolver.resolve_endpoint(¶ms);
1119 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.amazonaws.com");
1120 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.amazonaws.com")
1121 .property("authSchemes", vec![ {
1122 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
1123 out.insert("name".to_string(), "sigv4".to_string().into());
1124 out.insert("signingName".to_string(), "sts".to_string().into());
1125 out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
1126 out
1127 }.into()])
1128 .build());
1129 }
1130
1131 #[test]
1133 fn test_67() {
1134 let params = crate::config::endpoint::Params::builder()
1135 .region("us-east-3".to_string())
1136 .use_fips(false)
1137 .use_dual_stack(false)
1138 .use_global_endpoint(true)
1139 .build().expect("invalid params");
1140 let resolver = crate::config::endpoint::DefaultResolver::new();
1141 let endpoint = resolver.resolve_endpoint(¶ms);
1142 let endpoint = endpoint.expect("Expected valid endpoint: https://sts.us-east-3.amazonaws.com");
1143 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://sts.us-east-3.amazonaws.com")
1144 .property("authSchemes", vec![ {
1145 let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
1146 out.insert("name".to_string(), "sigv4".to_string().into());
1147 out.insert("signingName".to_string(), "sts".to_string().into());
1148 out.insert("signingRegion".to_string(), "us-east-3".to_string().into());
1149 out
1150 }.into()])
1151 .build());
1152 }
1153
1154 #[test]
1156 fn test_68() {
1157 let params = crate::config::endpoint::Params::builder()
1158 .region("us-west-1".to_string())
1159 .use_fips(false)
1160 .use_dual_stack(false)
1161 .use_global_endpoint(true)
1162 .endpoint("https://example.com".to_string())
1163 .build().expect("invalid params");
1164 let resolver = crate::config::endpoint::DefaultResolver::new();
1165 let endpoint = resolver.resolve_endpoint(¶ms);
1166 let endpoint = endpoint.expect("Expected valid endpoint: https://example.com");
1167 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://example.com")
1168 .build());
1169 }
1170
1171 #[test]
1173 fn test_69() {
1174 let params = crate::config::endpoint::Params::builder()
1175 .use_fips(false)
1176 .use_dual_stack(false)
1177 .use_global_endpoint(false)
1178 .endpoint("https://example.com".to_string())
1179 .build().expect("invalid params");
1180 let resolver = crate::config::endpoint::DefaultResolver::new();
1181 let endpoint = resolver.resolve_endpoint(¶ms);
1182 let endpoint = endpoint.expect("Expected valid endpoint: https://example.com");
1183 assert_eq!(endpoint, ::aws_smithy_types::endpoint::Endpoint::builder().url("https://example.com")
1184 .build());
1185 }
1186
1187
1188}
1189
1190pub trait ResolveEndpoint: ::std::marker::Send + ::std::marker::Sync + ::std::fmt::Debug {
1192 fn resolve_endpoint<'a>(&'a self, params: &'a crate::config::endpoint::Params) -> ::aws_smithy_runtime_api::client::endpoint::EndpointFuture<'a>;
1194
1195 fn into_shared_resolver(self) -> ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver
1199 where
1200 Self: Sized + 'static,
1201 {
1202 ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver::new(DowncastParams(self))
1203 }
1204 }
1205
1206 #[derive(Debug)]
1207 struct DowncastParams<T>(T);
1208 impl<T> ::aws_smithy_runtime_api::client::endpoint::ResolveEndpoint for DowncastParams<T>
1209 where
1210 T: ResolveEndpoint,
1211 {
1212 fn resolve_endpoint<'a>(&'a self, params: &'a ::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams) -> ::aws_smithy_runtime_api::client::endpoint::EndpointFuture<'a> {
1213 let ep = match params.get::<crate::config::endpoint::Params>() {
1214 Some(params) => self.0.resolve_endpoint(params),
1215 None => ::aws_smithy_runtime_api::client::endpoint::EndpointFuture::ready(Err("params of expected type was not present".into())),
1216 };
1217 ep
1218 }
1219
1220 }
1221
1222#[derive(Debug, Default)]
1224 pub struct DefaultResolver {
1225 partition_resolver: crate::endpoint_lib::partition::PartitionResolver
1226 }
1227
1228 impl DefaultResolver {
1229 pub fn new() -> Self {
1231 Self { partition_resolver: crate::endpoint_lib::DEFAULT_PARTITION_RESOLVER.clone() }
1232 }
1233
1234 fn resolve_endpoint(&self, params: &crate::config::endpoint::Params) -> ::std::result::Result<::aws_smithy_types::endpoint::Endpoint, ::aws_smithy_runtime_api::box_error::BoxError> {
1235 let mut diagnostic_collector = crate::endpoint_lib::diagnostic::DiagnosticCollector::new();
1236 Ok(crate::config::endpoint::internals::resolve_endpoint(params, &mut diagnostic_collector, &self.partition_resolver)
1237 .map_err(|err|err.with_source(diagnostic_collector.take_last_error()))?)
1238 }
1239 }
1240
1241 impl crate::config::endpoint::ResolveEndpoint for DefaultResolver {
1242 fn resolve_endpoint(&self, params: &crate::config::endpoint::Params) -> ::aws_smithy_runtime_api::client::endpoint::EndpointFuture<'_> {
1243 ::aws_smithy_runtime_api::client::endpoint::EndpointFuture::ready(self.resolve_endpoint(params))
1244 }
1245 }
1246
1247#[non_exhaustive]
1248#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
1249pub struct Params {
1251 pub(crate) region: ::std::option::Option<::std::string::String>,
1253 pub(crate) use_dual_stack: bool,
1255 pub(crate) use_fips: bool,
1257 pub(crate) endpoint: ::std::option::Option<::std::string::String>,
1259 pub(crate) use_global_endpoint: bool,
1261}
1262impl Params {
1263 pub fn builder() -> crate::config::endpoint::ParamsBuilder {
1265 crate::config::endpoint::ParamsBuilder::default()
1266 }
1267 pub fn region(&self) -> ::std::option::Option<&str> {
1269 self.region.as_deref()
1270 }
1271 pub fn use_dual_stack(&self) -> ::std::option::Option<bool> {
1273 Some(self.use_dual_stack)
1274 }
1275 pub fn use_fips(&self) -> ::std::option::Option<bool> {
1277 Some(self.use_fips)
1278 }
1279 pub fn endpoint(&self) -> ::std::option::Option<&str> {
1281 self.endpoint.as_deref()
1282 }
1283 pub fn use_global_endpoint(&self) -> ::std::option::Option<bool> {
1285 Some(self.use_global_endpoint)
1286 }
1287}
1288
1289#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
1291pub struct ParamsBuilder {
1292 region: ::std::option::Option<::std::string::String>,
1293 use_dual_stack: ::std::option::Option<bool>,
1294 use_fips: ::std::option::Option<bool>,
1295 endpoint: ::std::option::Option<::std::string::String>,
1296 use_global_endpoint: ::std::option::Option<bool>,
1297}
1298impl ParamsBuilder {
1299 pub fn build(self) -> ::std::result::Result<crate::config::endpoint::Params, crate::config::endpoint::InvalidParams> {
1301 Ok(#[allow(clippy::unnecessary_lazy_evaluations)]
1302 crate::config::endpoint::Params {
1303 region: self.region
1304 ,
1305 use_dual_stack: self.use_dual_stack
1306 .or_else(||Some(false))
1307 .ok_or_else(||crate::config::endpoint::InvalidParams::missing("use_dual_stack"))?
1308 ,
1309 use_fips: self.use_fips
1310 .or_else(||Some(false))
1311 .ok_or_else(||crate::config::endpoint::InvalidParams::missing("use_fips"))?
1312 ,
1313 endpoint: self.endpoint
1314 ,
1315 use_global_endpoint: self.use_global_endpoint
1316 .or_else(||Some(false))
1317 .ok_or_else(||crate::config::endpoint::InvalidParams::missing("use_global_endpoint"))?
1318 ,
1319 })
1320 }
1321 pub fn region(mut self, value: impl Into<::std::string::String>) -> Self {
1325 self.region = Some(value.into());
1326 self
1327 }
1328
1329 pub fn set_region(mut self, param: Option<::std::string::String>) -> Self {
1333 self.region = param;
1334 self
1335 }
1336 pub fn use_dual_stack(mut self, value: impl Into<bool>) -> Self {
1341 self.use_dual_stack = Some(value.into());
1342 self
1343 }
1344
1345 pub fn set_use_dual_stack(mut self, param: Option<bool>) -> Self {
1350 self.use_dual_stack = param;
1351 self
1352 }
1353 pub fn use_fips(mut self, value: impl Into<bool>) -> Self {
1358 self.use_fips = Some(value.into());
1359 self
1360 }
1361
1362 pub fn set_use_fips(mut self, param: Option<bool>) -> Self {
1367 self.use_fips = param;
1368 self
1369 }
1370 pub fn endpoint(mut self, value: impl Into<::std::string::String>) -> Self {
1374 self.endpoint = Some(value.into());
1375 self
1376 }
1377
1378 pub fn set_endpoint(mut self, param: Option<::std::string::String>) -> Self {
1382 self.endpoint = param;
1383 self
1384 }
1385 pub fn use_global_endpoint(mut self, value: impl Into<bool>) -> Self {
1390 self.use_global_endpoint = Some(value.into());
1391 self
1392 }
1393
1394 pub fn set_use_global_endpoint(mut self, param: Option<bool>) -> Self {
1399 self.use_global_endpoint = param;
1400 self
1401 }
1402}
1403
1404#[derive(Debug)]
1406 pub struct InvalidParams {
1407 field: std::borrow::Cow<'static, str>
1408 }
1409
1410 impl InvalidParams {
1411 #[allow(dead_code)]
1412 fn missing(field: &'static str) -> Self {
1413 Self { field: field.into() }
1414 }
1415 }
1416
1417 impl std::fmt::Display for InvalidParams {
1418 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1419 write!(f, "a required field was missing: `{}`", self.field)
1420 }
1421 }
1422
1423 impl std::error::Error for InvalidParams { }
1424
1425mod internals;
1426