public async Task TestPreviewWildcard()
        {
            var testStr             = "abc7363";
            var hostname            = $"test-{testStr}.test." + PrimaryTestDomain;
            var wildcardDomain      = "*.test." + PrimaryTestDomain;
            var testPreviewSiteName = "TestPreview_" + testStr;

            if (await iisManager.SiteExists(testPreviewSiteName))
            {
                await iisManager.DeleteSite(testPreviewSiteName);
            }

            var site = await iisManager.CreateSite(testPreviewSiteName, hostname, PrimaryIISRoot, "DefaultAppPool", port : testSiteHttpPort);

            ManagedCertificate managedCertificate = null;
            X509Certificate2   certInfo           = null;

            try
            {
                var dummyManagedCertificate = new ManagedCertificate
                {
                    Id            = Guid.NewGuid().ToString(),
                    Name          = testPreviewSiteName,
                    GroupId       = site.Id.ToString(),
                    RequestConfig = new CertRequestConfig
                    {
                        PrimaryDomain                    = wildcardDomain,
                        PerformAutoConfig                = true,
                        PerformAutomatedCertBinding      = true,
                        PerformChallengeFileCopy         = true,
                        PerformExtensionlessConfigChecks = true,
                        Challenges = new ObservableCollection <CertRequestChallengeConfig>
                        {
                            new CertRequestChallengeConfig {
                                ChallengeType          = SupportedChallengeTypes.CHALLENGE_TYPE_DNS,
                                ChallengeProvider      = "DNS01.API.Route53",
                                ChallengeCredentialKey = _awsCredStorageKey
                            }
                        }
                    },
                    ItemType = ManagedCertificateType.SSL_LetsEncrypt_LocalIIS
                };

                var preview = await certifyManager.GeneratePreview(dummyManagedCertificate);

                var previewSummary = GetPreviewSummary(preview);
                System.Diagnostics.Debug.WriteLine(previewSummary);

                var deployStep = preview.Find(a => a.Category == "Deployment");
                Assert.IsTrue(deployStep.Substeps.Count == 1, "Only 1 binding deployment expected");
                Assert.IsTrue(deployStep.Substeps[0].Description == $"Add https binding | {testPreviewSiteName} | ***:443:{hostname} SNI**");
            }
            finally
            {
                // remove IIS site
                await iisManager.DeleteSite(testPreviewSiteName);

                // remove managed site
                if (managedCertificate != null)
                {
                    await certifyManager.DeleteManagedCertificate(managedCertificate.Id);
                }

                // cleanup certificate
                if (certInfo != null)
                {
                    CertificateManager.RemoveCertificate(certInfo);
                }
            }
        }