Пример #1
0
        private void RunWebsiteTestScenario(WebsiteTestDelegate testAction, string skuTier = "Shared", string skuName = "D1",
                                            [System.Runtime.CompilerServices.CallerMemberName]
                                            string methodName = "testframework_failed")
        {
            using (var context = MockContext.Start(this.GetType().FullName, methodName))
            {
                var webSitesClient  = this.GetWebSiteManagementClient(context);
                var resourcesClient = this.GetResourceManagementClient(context);

                var webSiteName        = TestUtilities.GenerateName("csmws");
                var resourceGroupName  = TestUtilities.GenerateName("csmrg");
                var webHostingPlanName = TestUtilities.GenerateName("csmwhp");
                var location           = ResourceGroupHelper.GetResourceLocation(resourcesClient, "Microsoft.Web/sites");

                resourcesClient.ResourceGroups.CreateOrUpdate(resourceGroupName,
                                                              new ResourceGroup
                {
                    Location = location
                });

                var serverFarm = webSitesClient.ServerFarms.CreateOrUpdateServerFarm(resourceGroupName, webHostingPlanName,
                                                                                     new ServerFarmWithRichSku()
                {
                    ServerFarmWithRichSkuName = webHostingPlanName,
                    Location = location,
                    Sku      = new SkuDescription()
                    {
                        Name = skuName,
                        Tier = skuTier
                    }
                });

                var webSite = webSitesClient.Sites.CreateOrUpdateSite(resourceGroupName, webSiteName, new Site
                {
                    SiteName = webSiteName,
                    Location = location,
                    Tags     = new Dictionary <string, string> {
                        { "tag1", "value1" }, { "tag2", "" }
                    },
                    ServerFarmId = serverFarm.Id
                });

                Assert.Equal(webSiteName, webSite.Name);
                Assert.Equal(serverFarm.Id, webSite.ServerFarmId, StringComparer.OrdinalIgnoreCase);
                Assert.Equal("value1", webSite.Tags["tag1"]);
                Assert.Equal("", webSite.Tags["tag2"]);

                testAction(webSiteName, resourceGroupName, webHostingPlanName, location, webSitesClient, resourcesClient);
            }
        }
        private void RunWebsiteTestScenario(WebsiteTestDelegate testAction, SkuOptions sku = SkuOptions.Shared)
        {
            var handler = new RecordedDelegatingHandler()
            {
                StatusCodeToReturn = HttpStatusCode.OK
            };

            using (UndoContext context = UndoContext.Current)
            {
                context.Start(4);
                WebSiteManagementClient  webSitesClient  = ResourceGroupHelper.GetWebSitesClient(handler);
                ResourceManagementClient resourcesClient = ResourceGroupHelper.GetResourcesClient(handler);

                string webSiteName        = TestUtilities.GenerateName("csmws");
                string resourceGroupName  = TestUtilities.GenerateName("csmrg");
                string webHostingPlanName = TestUtilities.GenerateName("csmwhp");
                string location           = ResourceGroupHelper.GetResourceLocation(resourcesClient, "Microsoft.Web/sites");

                resourcesClient.ResourceGroups.CreateOrUpdate(resourceGroupName,
                                                              new ResourceGroup
                {
                    Location = location
                });

                webSitesClient.WebHostingPlans.CreateOrUpdate(resourceGroupName,
                                                              new WebHostingPlanCreateOrUpdateParameters
                {
                    WebHostingPlan = new WebHostingPlan
                    {
                        Name       = webHostingPlanName,
                        Location   = location,
                        Properties = new WebHostingPlanProperties()
                        {
                            Sku = sku
                        }
                    }
                });

                var webSite = webSitesClient.WebSites.CreateOrUpdate(resourceGroupName, webSiteName, null, new WebSiteCreateOrUpdateParameters
                {
                    WebSite = new WebSiteBase
                    {
                        Name     = webSiteName,
                        Location = location,
                        Tags     = new Dictionary <string, string> {
                            { "tag1", "value1" }, { "tag2", "" }
                        },
                        Properties = new WebSiteBaseProperties
                        {
                            ServerFarm = webHostingPlanName
                        }
                    }
                });

                Assert.Equal(webSiteName, webSite.WebSite.Name);
                Assert.Equal(webSite.WebSite.Properties.ServerFarm, webHostingPlanName);
                Assert.Equal("value1", webSite.WebSite.Tags["tag1"]);
                Assert.Equal("", webSite.WebSite.Tags["tag2"]);

                testAction(webSiteName, resourceGroupName, webHostingPlanName, location, webSitesClient, resourcesClient);
            }
        }
        private void RunWebsiteTestScenario(WebsiteTestDelegate testAction, SkuOptions sku = SkuOptions.Shared)
        {
            var handler = new RecordedDelegatingHandler() { StatusCodeToReturn = HttpStatusCode.OK };

            using (UndoContext context = UndoContext.Current)
            {
                context.Start(4);
                WebSiteManagementClient webSitesClient = ResourceGroupHelper.GetWebSitesClient(handler);
                ResourceManagementClient resourcesClient = ResourceGroupHelper.GetResourcesClient(handler);

                string webSiteName = TestUtilities.GenerateName("csmws");
                string resourceGroupName = TestUtilities.GenerateName("csmrg");
                string webHostingPlanName = TestUtilities.GenerateName("csmwhp");
                string location = ResourceGroupHelper.GetResourceLocation(resourcesClient, "Microsoft.Web/sites");

                resourcesClient.ResourceGroups.CreateOrUpdate(resourceGroupName,
                    new ResourceGroup
                    {
                        Location = location
                    });

                webSitesClient.WebHostingPlans.CreateOrUpdate(resourceGroupName,
                    new WebHostingPlanCreateOrUpdateParameters
                    {
                        WebHostingPlan = new WebHostingPlan
                        {
                            Name = webHostingPlanName,
                            Location = location,
                            Properties = new WebHostingPlanProperties()
                            {
                                Sku = sku
                            }
                        }
                    });

                var webSite = webSitesClient.WebSites.CreateOrUpdate(resourceGroupName, webSiteName, null, new WebSiteCreateOrUpdateParameters
                {
                    WebSite = new WebSiteBase
                    {
                        Name = webSiteName,
                        Location = location,
                        Tags = new Dictionary<string, string> { { "tag1", "value1" }, { "tag2", "" } },
                        Properties = new WebSiteBaseProperties
                        {
                            ServerFarm = webHostingPlanName
                        }
                    }
                });

                Assert.Equal(webSiteName, webSite.WebSite.Name);
                Assert.Equal(webSite.WebSite.Properties.ServerFarm, webHostingPlanName);
                Assert.Equal("value1", webSite.WebSite.Tags["tag1"]);
                Assert.Equal("", webSite.WebSite.Tags["tag2"]);

                testAction(webSiteName, resourceGroupName, webHostingPlanName, location, webSitesClient, resourcesClient);
            }
        }