{
    "testCases": [
        {
            "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.af-south-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "af-south-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.ap-northeast-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "ap-northeast-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.ap-northeast-2.amazonaws.com"
                }
            },
            "params": {
                "Region": "ap-northeast-2",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.ap-northeast-3.amazonaws.com"
                }
            },
            "params": {
                "Region": "ap-northeast-3",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.ap-south-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "ap-south-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.ap-southeast-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "ap-southeast-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.ap-southeast-2.amazonaws.com"
                }
            },
            "params": {
                "Region": "ap-southeast-2",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.ca-central-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "ca-central-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.eu-central-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "eu-central-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.eu-north-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "eu-north-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.eu-south-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "eu-south-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.eu-west-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "eu-west-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.eu-west-2.amazonaws.com"
                }
            },
            "params": {
                "Region": "eu-west-2",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.eu-west-3.amazonaws.com"
                }
            },
            "params": {
                "Region": "eu-west-3",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.me-south-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "me-south-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.sa-east-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "sa-east-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.us-east-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "us-east-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email-fips.us-east-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "us-east-1",
                "UseFIPS": true,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.us-east-2.amazonaws.com"
                }
            },
            "params": {
                "Region": "us-east-2",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.us-west-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "us-west-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.us-west-2.amazonaws.com"
                }
            },
            "params": {
                "Region": "us-west-2",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email-fips.us-west-2.amazonaws.com"
                }
            },
            "params": {
                "Region": "us-west-2",
                "UseFIPS": true,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled",
            "expect": {
                "endpoint": {
                    "url": "https://email-fips.us-east-1.api.aws"
                }
            },
            "params": {
                "Region": "us-east-1",
                "UseFIPS": true,
                "UseDualStack": true
            }
        },
        {
            "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.us-east-1.api.aws"
                }
            },
            "params": {
                "Region": "us-east-1",
                "UseFIPS": false,
                "UseDualStack": true
            }
        },
        {
            "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled",
            "expect": {
                "endpoint": {
                    "url": "https://email-fips.cn-north-1.api.amazonwebservices.com.cn"
                }
            },
            "params": {
                "Region": "cn-north-1",
                "UseFIPS": true,
                "UseDualStack": true
            }
        },
        {
            "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email-fips.cn-north-1.amazonaws.com.cn"
                }
            },
            "params": {
                "Region": "cn-north-1",
                "UseFIPS": true,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.cn-north-1.api.amazonwebservices.com.cn"
                }
            },
            "params": {
                "Region": "cn-north-1",
                "UseFIPS": false,
                "UseDualStack": true
            }
        },
        {
            "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.cn-north-1.amazonaws.com.cn"
                }
            },
            "params": {
                "Region": "cn-north-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.us-gov-west-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "us-gov-west-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email-fips.us-gov-west-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "us-gov-west-1",
                "UseFIPS": true,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled",
            "expect": {
                "endpoint": {
                    "url": "https://email-fips.us-gov-east-1.api.aws"
                }
            },
            "params": {
                "Region": "us-gov-east-1",
                "UseFIPS": true,
                "UseDualStack": true
            }
        },
        {
            "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email-fips.us-gov-east-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "us-gov-east-1",
                "UseFIPS": true,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.us-gov-east-1.api.aws"
                }
            },
            "params": {
                "Region": "us-gov-east-1",
                "UseFIPS": false,
                "UseDualStack": true
            }
        },
        {
            "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.us-gov-east-1.amazonaws.com"
                }
            },
            "params": {
                "Region": "us-gov-east-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email-fips.us-iso-east-1.c2s.ic.gov"
                }
            },
            "params": {
                "Region": "us-iso-east-1",
                "UseFIPS": true,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.us-iso-east-1.c2s.ic.gov"
                }
            },
            "params": {
                "Region": "us-iso-east-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email-fips.us-isob-east-1.sc2s.sgov.gov"
                }
            },
            "params": {
                "Region": "us-isob-east-1",
                "UseFIPS": true,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://email.us-isob-east-1.sc2s.sgov.gov"
                }
            },
            "params": {
                "Region": "us-isob-east-1",
                "UseFIPS": false,
                "UseDualStack": false
            }
        },
        {
            "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://example.com"
                }
            },
            "params": {
                "Region": "us-east-1",
                "UseFIPS": false,
                "UseDualStack": false,
                "Endpoint": "https://example.com"
            }
        },
        {
            "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled",
            "expect": {
                "endpoint": {
                    "url": "https://example.com"
                }
            },
            "params": {
                "UseFIPS": false,
                "UseDualStack": false,
                "Endpoint": "https://example.com"
            }
        },
        {
            "documentation": "For custom endpoint with fips enabled and dualstack disabled",
            "expect": {
                "error": "Invalid Configuration: FIPS and custom endpoint are not supported"
            },
            "params": {
                "Region": "us-east-1",
                "UseFIPS": true,
                "UseDualStack": false,
                "Endpoint": "https://example.com"
            }
        },
        {
            "documentation": "For custom endpoint with fips disabled and dualstack enabled",
            "expect": {
                "error": "Invalid Configuration: Dualstack and custom endpoint are not supported"
            },
            "params": {
                "Region": "us-east-1",
                "UseFIPS": false,
                "UseDualStack": true,
                "Endpoint": "https://example.com"
            }
        },
        {
            "documentation": "Missing region",
            "expect": {
                "error": "Invalid Configuration: Missing Region"
            }
        },
        {
            "documentation": "Valid EndpointId with dualstack and FIPS disabled. i.e, IPv4 Only stack with no FIPS",
            "expect": {
                "endpoint": {
                    "properties": {
                        "authSchemes": [
                            {
                                "signingName": "ses",
                                "name": "sigv4a",
                                "signingRegionSet": [
                                    "*"
                                ]
                            }
                        ]
                    },
                    "url": "https://abc123.456def.endpoints.email.amazonaws.com"
                }
            },
            "params": {
                "EndpointId": "abc123.456def",
                "UseDualStack": false,
                "UseFIPS": false,
                "Region": "us-east-1"
            }
        },
        {
            "documentation": "Valid EndpointId with dualstack enabled",
            "expect": {
                "endpoint": {
                    "properties": {
                        "authSchemes": [
                            {
                                "signingName": "ses",
                                "name": "sigv4a",
                                "signingRegionSet": [
                                    "*"
                                ]
                            }
                        ]
                    },
                    "url": "https://abc123.456def.endpoints.email.global.api.aws"
                }
            },
            "params": {
                "EndpointId": "abc123.456def",
                "UseDualStack": true,
                "UseFIPS": false,
                "Region": "us-west-2"
            }
        },
        {
            "documentation": "Valid EndpointId with FIPS set, dualstack disabled",
            "expect": {
                "error": "Invalid Configuration: FIPS is not supported with multi-region endpoints"
            },
            "params": {
                "EndpointId": "abc123.456def",
                "UseDualStack": false,
                "UseFIPS": true,
                "Region": "ap-northeast-1"
            }
        },
        {
            "documentation": "Valid EndpointId with both dualstack and FIPS enabled",
            "expect": {
                "error": "Invalid Configuration: FIPS is not supported with multi-region endpoints"
            },
            "params": {
                "EndpointId": "abc123.456def",
                "UseDualStack": true,
                "UseFIPS": true,
                "Region": "ap-northeast-2"
            }
        },
        {
            "documentation": "Regular regional request, without EndpointId",
            "expect": {
                "endpoint": {
                    "url": "https://email.eu-west-1.amazonaws.com"
                }
            },
            "params": {
                "UseDualStack": false,
                "Region": "eu-west-1"
            }
        },
        {
            "documentation": "Invalid EndpointId (Invalid chars / format)",
            "expect": {
                "error": "EndpointId must be a valid host label"
            },
            "params": {
                "EndpointId": "badactor.com?foo=bar",
                "UseDualStack": false,
                "Region": "eu-west-2"
            }
        },
        {
            "documentation": "Invalid EndpointId (Empty)",
            "expect": {
                "error": "EndpointId must be a valid host label"
            },
            "params": {
                "EndpointId": "",
                "UseDualStack": false,
                "Region": "ap-south-1"
            }
        },
        {
            "documentation": "Valid EndpointId with custom sdk endpoint",
            "expect": {
                "endpoint": {
                    "properties": {
                        "authSchemes": [
                            {
                                "signingName": "ses",
                                "name": "sigv4a",
                                "signingRegionSet": [
                                    "*"
                                ]
                            }
                        ]
                    },
                    "url": "https://example.com"
                }
            },
            "params": {
                "EndpointId": "abc123.456def",
                "UseDualStack": false,
                "Region": "us-east-1",
                "Endpoint": "https://example.com"
            }
        },
        {
            "documentation": "Valid EndpointId with custom sdk endpoint with FIPS enabled",
            "expect": {
                "error": "Invalid Configuration: FIPS is not supported with multi-region endpoints"
            },
            "params": {
                "EndpointId": "abc123.456def",
                "UseDualStack": false,
                "UseFIPS": true,
                "Region": "us-east-1",
                "Endpoint": "https://example.com"
            }
        }
    ],
    "version": "1.0"
}