1{
2    "testCases": [
3        {
4            "documentation": "For region aws-global with FIPS disabled and DualStack disabled",
5            "expect": {
6                "endpoint": {
7                    "properties": {
8                        "authSchemes": [
9                            {
10                                "name": "sigv4",
11                                "signingName": "iam",
12                                "signingRegion": "us-east-1"
13                            }
14                        ]
15                    },
16                    "url": "https://iam.amazonaws.com"
17                }
18            },
19            "params": {
20                "Region": "aws-global",
21                "UseFIPS": false,
22                "UseDualStack": false
23            }
24        },
25        {
26            "documentation": "For region aws-global with FIPS enabled and DualStack disabled",
27            "expect": {
28                "endpoint": {
29                    "properties": {
30                        "authSchemes": [
31                            {
32                                "name": "sigv4",
33                                "signingName": "iam",
34                                "signingRegion": "us-east-1"
35                            }
36                        ]
37                    },
38                    "url": "https://iam-fips.amazonaws.com"
39                }
40            },
41            "params": {
42                "Region": "aws-global",
43                "UseFIPS": true,
44                "UseDualStack": false
45            }
46        },
47        {
48            "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled",
49            "expect": {
50                "endpoint": {
51                    "url": "https://iam-fips.us-east-1.api.aws"
52                }
53            },
54            "params": {
55                "Region": "us-east-1",
56                "UseFIPS": true,
57                "UseDualStack": true
58            }
59        },
60        {
61            "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled",
62            "expect": {
63                "endpoint": {
64                    "properties": {
65                        "authSchemes": [
66                            {
67                                "name": "sigv4",
68                                "signingName": "iam",
69                                "signingRegion": "us-east-1"
70                            }
71                        ]
72                    },
73                    "url": "https://iam-fips.amazonaws.com"
74                }
75            },
76            "params": {
77                "Region": "us-east-1",
78                "UseFIPS": true,
79                "UseDualStack": false
80            }
81        },
82        {
83            "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled",
84            "expect": {
85                "endpoint": {
86                    "url": "https://iam.us-east-1.api.aws"
87                }
88            },
89            "params": {
90                "Region": "us-east-1",
91                "UseFIPS": false,
92                "UseDualStack": true
93            }
94        },
95        {
96            "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled",
97            "expect": {
98                "endpoint": {
99                    "properties": {
100                        "authSchemes": [
101                            {
102                                "name": "sigv4",
103                                "signingName": "iam",
104                                "signingRegion": "us-east-1"
105                            }
106                        ]
107                    },
108                    "url": "https://iam.amazonaws.com"
109                }
110            },
111            "params": {
112                "Region": "us-east-1",
113                "UseFIPS": false,
114                "UseDualStack": false
115            }
116        },
117        {
118            "documentation": "For region aws-cn-global with FIPS disabled and DualStack disabled",
119            "expect": {
120                "endpoint": {
121                    "properties": {
122                        "authSchemes": [
123                            {
124                                "name": "sigv4",
125                                "signingName": "iam",
126                                "signingRegion": "cn-north-1"
127                            }
128                        ]
129                    },
130                    "url": "https://iam.cn-north-1.amazonaws.com.cn"
131                }
132            },
133            "params": {
134                "Region": "aws-cn-global",
135                "UseFIPS": false,
136                "UseDualStack": false
137            }
138        },
139        {
140            "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled",
141            "expect": {
142                "endpoint": {
143                    "url": "https://iam-fips.cn-north-1.api.amazonwebservices.com.cn"
144                }
145            },
146            "params": {
147                "Region": "cn-north-1",
148                "UseFIPS": true,
149                "UseDualStack": true
150            }
151        },
152        {
153            "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled",
154            "expect": {
155                "endpoint": {
156                    "url": "https://iam-fips.cn-north-1.amazonaws.com.cn"
157                }
158            },
159            "params": {
160                "Region": "cn-north-1",
161                "UseFIPS": true,
162                "UseDualStack": false
163            }
164        },
165        {
166            "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled",
167            "expect": {
168                "endpoint": {
169                    "url": "https://iam.cn-north-1.api.amazonwebservices.com.cn"
170                }
171            },
172            "params": {
173                "Region": "cn-north-1",
174                "UseFIPS": false,
175                "UseDualStack": true
176            }
177        },
178        {
179            "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled",
180            "expect": {
181                "endpoint": {
182                    "properties": {
183                        "authSchemes": [
184                            {
185                                "name": "sigv4",
186                                "signingName": "iam",
187                                "signingRegion": "cn-north-1"
188                            }
189                        ]
190                    },
191                    "url": "https://iam.cn-north-1.amazonaws.com.cn"
192                }
193            },
194            "params": {
195                "Region": "cn-north-1",
196                "UseFIPS": false,
197                "UseDualStack": false
198            }
199        },
200        {
201            "documentation": "For region aws-us-gov-global with FIPS disabled and DualStack disabled",
202            "expect": {
203                "endpoint": {
204                    "properties": {
205                        "authSchemes": [
206                            {
207                                "name": "sigv4",
208                                "signingName": "iam",
209                                "signingRegion": "us-gov-west-1"
210                            }
211                        ]
212                    },
213                    "url": "https://iam.us-gov.amazonaws.com"
214                }
215            },
216            "params": {
217                "Region": "aws-us-gov-global",
218                "UseFIPS": false,
219                "UseDualStack": false
220            }
221        },
222        {
223            "documentation": "For region aws-us-gov-global with FIPS enabled and DualStack disabled",
224            "expect": {
225                "endpoint": {
226                    "properties": {
227                        "authSchemes": [
228                            {
229                                "name": "sigv4",
230                                "signingName": "iam",
231                                "signingRegion": "us-gov-west-1"
232                            }
233                        ]
234                    },
235                    "url": "https://iam.us-gov.amazonaws.com"
236                }
237            },
238            "params": {
239                "Region": "aws-us-gov-global",
240                "UseFIPS": true,
241                "UseDualStack": false
242            }
243        },
244        {
245            "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled",
246            "expect": {
247                "endpoint": {
248                    "url": "https://iam-fips.us-gov-east-1.api.aws"
249                }
250            },
251            "params": {
252                "Region": "us-gov-east-1",
253                "UseFIPS": true,
254                "UseDualStack": true
255            }
256        },
257        {
258            "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled",
259            "expect": {
260                "endpoint": {
261                    "properties": {
262                        "authSchemes": [
263                            {
264                                "name": "sigv4",
265                                "signingName": "iam",
266                                "signingRegion": "us-gov-west-1"
267                            }
268                        ]
269                    },
270                    "url": "https://iam.us-gov.amazonaws.com"
271                }
272            },
273            "params": {
274                "Region": "us-gov-east-1",
275                "UseFIPS": true,
276                "UseDualStack": false
277            }
278        },
279        {
280            "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled",
281            "expect": {
282                "endpoint": {
283                    "url": "https://iam.us-gov-east-1.api.aws"
284                }
285            },
286            "params": {
287                "Region": "us-gov-east-1",
288                "UseFIPS": false,
289                "UseDualStack": true
290            }
291        },
292        {
293            "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled",
294            "expect": {
295                "endpoint": {
296                    "properties": {
297                        "authSchemes": [
298                            {
299                                "name": "sigv4",
300                                "signingName": "iam",
301                                "signingRegion": "us-gov-west-1"
302                            }
303                        ]
304                    },
305                    "url": "https://iam.us-gov.amazonaws.com"
306                }
307            },
308            "params": {
309                "Region": "us-gov-east-1",
310                "UseFIPS": false,
311                "UseDualStack": false
312            }
313        },
314        {
315            "documentation": "For region aws-iso-global with FIPS disabled and DualStack disabled",
316            "expect": {
317                "endpoint": {
318                    "properties": {
319                        "authSchemes": [
320                            {
321                                "name": "sigv4",
322                                "signingName": "iam",
323                                "signingRegion": "us-iso-east-1"
324                            }
325                        ]
326                    },
327                    "url": "https://iam.us-iso-east-1.c2s.ic.gov"
328                }
329            },
330            "params": {
331                "Region": "aws-iso-global",
332                "UseFIPS": false,
333                "UseDualStack": false
334            }
335        },
336        {
337            "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled",
338            "expect": {
339                "error": "FIPS and DualStack are enabled, but this partition does not support one or both"
340            },
341            "params": {
342                "Region": "us-iso-east-1",
343                "UseFIPS": true,
344                "UseDualStack": true
345            }
346        },
347        {
348            "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled",
349            "expect": {
350                "endpoint": {
351                    "url": "https://iam-fips.us-iso-east-1.c2s.ic.gov"
352                }
353            },
354            "params": {
355                "Region": "us-iso-east-1",
356                "UseFIPS": true,
357                "UseDualStack": false
358            }
359        },
360        {
361            "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled",
362            "expect": {
363                "error": "DualStack is enabled but this partition does not support DualStack"
364            },
365            "params": {
366                "Region": "us-iso-east-1",
367                "UseFIPS": false,
368                "UseDualStack": true
369            }
370        },
371        {
372            "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled",
373            "expect": {
374                "endpoint": {
375                    "properties": {
376                        "authSchemes": [
377                            {
378                                "name": "sigv4",
379                                "signingName": "iam",
380                                "signingRegion": "us-iso-east-1"
381                            }
382                        ]
383                    },
384                    "url": "https://iam.us-iso-east-1.c2s.ic.gov"
385                }
386            },
387            "params": {
388                "Region": "us-iso-east-1",
389                "UseFIPS": false,
390                "UseDualStack": false
391            }
392        },
393        {
394            "documentation": "For region aws-iso-b-global with FIPS disabled and DualStack disabled",
395            "expect": {
396                "endpoint": {
397                    "properties": {
398                        "authSchemes": [
399                            {
400                                "name": "sigv4",
401                                "signingName": "iam",
402                                "signingRegion": "us-isob-east-1"
403                            }
404                        ]
405                    },
406                    "url": "https://iam.us-isob-east-1.sc2s.sgov.gov"
407                }
408            },
409            "params": {
410                "Region": "aws-iso-b-global",
411                "UseFIPS": false,
412                "UseDualStack": false
413            }
414        },
415        {
416            "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled",
417            "expect": {
418                "error": "FIPS and DualStack are enabled, but this partition does not support one or both"
419            },
420            "params": {
421                "Region": "us-isob-east-1",
422                "UseFIPS": true,
423                "UseDualStack": true
424            }
425        },
426        {
427            "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled",
428            "expect": {
429                "endpoint": {
430                    "url": "https://iam-fips.us-isob-east-1.sc2s.sgov.gov"
431                }
432            },
433            "params": {
434                "Region": "us-isob-east-1",
435                "UseFIPS": true,
436                "UseDualStack": false
437            }
438        },
439        {
440            "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled",
441            "expect": {
442                "error": "DualStack is enabled but this partition does not support DualStack"
443            },
444            "params": {
445                "Region": "us-isob-east-1",
446                "UseFIPS": false,
447                "UseDualStack": true
448            }
449        },
450        {
451            "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled",
452            "expect": {
453                "endpoint": {
454                    "properties": {
455                        "authSchemes": [
456                            {
457                                "name": "sigv4",
458                                "signingName": "iam",
459                                "signingRegion": "us-isob-east-1"
460                            }
461                        ]
462                    },
463                    "url": "https://iam.us-isob-east-1.sc2s.sgov.gov"
464                }
465            },
466            "params": {
467                "Region": "us-isob-east-1",
468                "UseFIPS": false,
469                "UseDualStack": false
470            }
471        },
472        {
473            "documentation": "For region eu-isoe-west-1 with FIPS disabled and DualStack disabled",
474            "expect": {
475                "endpoint": {
476                    "properties": {
477                        "authSchemes": [
478                            {
479                                "name": "sigv4",
480                                "signingName": "iam",
481                                "signingRegion": "eu-isoe-west-1"
482                            }
483                        ]
484                    },
485                    "url": "https://iam.eu-isoe-west-1.cloud.adc-e.uk"
486                }
487            },
488            "params": {
489                "Region": "eu-isoe-west-1",
490                "UseFIPS": false,
491                "UseDualStack": false
492            }
493        },
494        {
495            "documentation": "For region us-isof-south-1 with FIPS disabled and DualStack disabled",
496            "expect": {
497                "endpoint": {
498                    "properties": {
499                        "authSchemes": [
500                            {
501                                "name": "sigv4",
502                                "signingName": "iam",
503                                "signingRegion": "us-isof-south-1"
504                            }
505                        ]
506                    },
507                    "url": "https://iam.us-isof-south-1.csp.hci.ic.gov"
508                }
509            },
510            "params": {
511                "Region": "us-isof-south-1",
512                "UseFIPS": false,
513                "UseDualStack": false
514            }
515        },
516        {
517            "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled",
518            "expect": {
519                "endpoint": {
520                    "url": "https://example.com"
521                }
522            },
523            "params": {
524                "Region": "us-east-1",
525                "UseFIPS": false,
526                "UseDualStack": false,
527                "Endpoint": "https://example.com"
528            }
529        },
530        {
531            "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled",
532            "expect": {
533                "endpoint": {
534                    "url": "https://example.com"
535                }
536            },
537            "params": {
538                "UseFIPS": false,
539                "UseDualStack": false,
540                "Endpoint": "https://example.com"
541            }
542        },
543        {
544            "documentation": "For custom endpoint with fips enabled and dualstack disabled",
545            "expect": {
546                "error": "Invalid Configuration: FIPS and custom endpoint are not supported"
547            },
548            "params": {
549                "Region": "us-east-1",
550                "UseFIPS": true,
551                "UseDualStack": false,
552                "Endpoint": "https://example.com"
553            }
554        },
555        {
556            "documentation": "For custom endpoint with fips disabled and dualstack enabled",
557            "expect": {
558                "error": "Invalid Configuration: Dualstack and custom endpoint are not supported"
559            },
560            "params": {
561                "Region": "us-east-1",
562                "UseFIPS": false,
563                "UseDualStack": true,
564                "Endpoint": "https://example.com"
565            }
566        },
567        {
568            "documentation": "Missing region",
569            "expect": {
570                "error": "Invalid Configuration: Missing Region"
571            }
572        }
573    ],
574    "version": "1.0"
575}