public void ProcessNewWebsiteTest() { const string websiteName = "website1"; const string webspaceName = "webspace1"; // Setup bool created = true; SimpleWebsitesManagement channel = new SimpleWebsitesManagement(); channel.GetWebSpacesThunk = ar => new WebSpaces(new List<WebSpace> { new WebSpace { Name = "webspace1", GeoRegion = "webspace1" }, new WebSpace { Name = "webspace2", GeoRegion = "webspace2" } }); channel.GetSiteConfigThunk = ar => { if (ar.Values["name"].Equals("website1") && ar.Values["webspaceName"].Equals("webspace1")) { return new SiteConfig { PublishingUsername = "******" }; } return null; }; channel.CreateSiteThunk = ar => { Assert.AreEqual(webspaceName, ar.Values["webspaceName"]); Site website = ar.Values["site"] as Site; Assert.IsNotNull(website); Assert.AreEqual(websiteName, website.Name); Assert.IsNotNull(website.HostNames.FirstOrDefault(hostname => hostname.Equals(websiteName + General.AzureWebsiteHostNameSuffix))); created = true; return website; }; // Test MockCommandRuntime mockRuntime = new MockCommandRuntime(); NewAzureWebsiteCommand newAzureWebsiteCommand = new NewAzureWebsiteCommand(channel) { ShareChannel = true, CommandRuntime = mockRuntime, Name = websiteName, Location = webspaceName, CurrentSubscription = new SubscriptionData { SubscriptionId = base.subscriptionName } }; newAzureWebsiteCommand.ExecuteCmdlet(); Assert.IsTrue(created); Assert.AreEqual<string>(websiteName, (mockRuntime.OutputPipeline[0] as SiteWithConfig).Name); }
public void GetsWebsiteDefaultLocation() { const string websiteName = "website1"; const string suffix = "azurewebsites.com"; const string location = "West US"; // Setup Mock<IWebsitesClient> clientMock = new Mock<IWebsitesClient>(); clientMock.Setup(f => f.GetWebsiteDnsSuffix()).Returns(suffix); clientMock.Setup(f => f.GetDefaultLocation()).Returns(location); bool created = true; SimpleWebsitesManagement channel = new SimpleWebsitesManagement(); channel.GetWebSpacesThunk = ar => new WebSpaces(); channel.GetSiteConfigThunk = ar => { return new SiteConfig { PublishingUsername = "******" }; }; channel.CreateSiteThunk = ar => { Site website = ar.Values["site"] as Site; Assert.IsNotNull(website); Assert.AreEqual(websiteName, website.Name); Assert.IsNotNull(website.HostNames.FirstOrDefault(hostname => hostname.Equals(string.Format("{0}.{1}", websiteName, suffix)))); created = true; return website; }; // Test MockCommandRuntime mockRuntime = new MockCommandRuntime(); NewAzureWebsiteCommand newAzureWebsiteCommand = new NewAzureWebsiteCommand(channel) { ShareChannel = true, CommandRuntime = mockRuntime, Name = websiteName, CurrentSubscription = new SubscriptionData { SubscriptionId = base.subscriptionId }, WebsitesClient = clientMock.Object }; newAzureWebsiteCommand.ExecuteCmdlet(); Assert.IsTrue(created); Assert.AreEqual<string>(websiteName, (mockRuntime.OutputPipeline[0] as SiteWithConfig).Name); clientMock.Verify(f => f.GetDefaultLocation(), Times.Once()); }