Exemple #1
0
            public void WhenAddBinding_IfAppDoesNotExist_ShouldAdd()
            {
                // Arrange
                const string configPath = "app.config";

                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                .MockIisExpressConfig_RealDocumentInitialized(configPath);

                var      config        = new IisExpressConfig(configPath, _mock.FileSystem.Object);
                XElement site          = null;
                var      xDefaultSites = config.Root.Document.Descendants("site").Where(s => s.Attribute("id").Value == "1").ToList();

                if (xDefaultSites.Any())
                {
                    site = xDefaultSites.First();
                }
                site.Descendants("bindings").Remove();

                // Act
                var binding = config.AddBinding("http", @"xxxx");

                //Assert
                Assert.True(site.Descendants("bindings").Any());
                Assert.Equal(@"xxxx", binding.Attribute("bindingInformation").Value);
            }
Exemple #2
0
            public void WhenRemoveBinding_IfAppDoesNotExist_ShouldAdd()
            {
                // Arrange
                const string configPath = "app.config";

                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                .MockIisExpressConfig_RealDocumentInitialized(configPath);

                var      config        = new IisExpressConfig(configPath, _mock.FileSystem.Object);
                XElement site          = null;
                var      xDefaultSites = config.Root.Document.Descendants("site").Where(s => s.Attribute("id").Value == "1").ToList();

                if (xDefaultSites.Any())
                {
                    site = xDefaultSites.First();
                }
                var xbindings = site.Descendants("bindings").First();

                Assert.Equal(2, xbindings.Descendants().Count());

                // Act
                config.RemoveBinding("http");
                config.RemoveBinding("https");

                //Assert
                Assert.False(xbindings.Descendants().Any());
            }
Exemple #3
0
            public void WhenAddApplicationPool_IfAppPoolDoesNotExist_ShouldAdd()
            {
                // Arrange
                const string configPath = "app.config";

                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                .MockIisExpressConfig_RealDocumentInitialized(configPath);

                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);

                config.Root.Document.Descendants("applicationPools").Remove();

                // Act
                var pool = config.AddApplicationPool("mypool", @"aaa", "mmm", "qqq");

                //Assert
                var xapppools    = config.Root.Document.Descendants("applicationPools").ToList();
                var processModel = pool.Descendants().First();

                Assert.True(xapppools.Any());
                Assert.Equal(2, xapppools.Descendants().Count());
                Assert.Equal(@"mypool", pool.Attribute("name").Value);
                Assert.Equal(@"aaa", pool.Attribute("managedRuntimeVersion").Value);
                Assert.Equal(@"mmm", pool.Attribute("managedPipelineMode").Value);
                Assert.Equal(@"qqq", processModel.Attribute("identityType").Value);
            }
Exemple #4
0
            public void WhenRemoveAllApplications_ShouldRemove()
            {
                // Arrange
                const string configPath = "app.config";

                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                .MockIisExpressConfig_RealDocumentInitialized(configPath);

                // Act
                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);

                config.RemoveAllApplications();

                //Assert
                XElement site          = null;
                var      xDefaultSites = config.Root.Document.Descendants("site").Where(s => s.Attribute("id").Value == "1").ToList();

                if (xDefaultSites.Any())
                {
                    site = xDefaultSites.First();
                }
                var xapplications = site.Descendants("application").ToList();

                Assert.False(xapplications.Any(a => a.Attribute("path").Value.Equals("/", StringComparison.InvariantCultureIgnoreCase)));
            }
Exemple #5
0
            public void WhenAddApplication_IfAppDoesNotExist_ShouldAdd()
            {
                // Arrange
                const string configPath = "app.config";

                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                .MockIisExpressConfig_RealDocumentInitialized(configPath);

                // Act
                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);
                var app    = config.AddApplication("MyApp", @"c:\somepath");

                //Assert
                XElement site          = null;
                var      xDefaultSites = config.Root.Document.Descendants("site").Where(s => s.Attribute("id").Value == "1").ToList();

                if (xDefaultSites.Any())
                {
                    site = xDefaultSites.First();
                }
                var xapplications = site.Descendants("application").ToList();

                Assert.True(xapplications.Any(a => a.Attribute("path").Value.Equals("/MyApp", StringComparison.InvariantCultureIgnoreCase)));
                Assert.Equal(@"c:\somepath", app.Descendants().First().Attribute("physicalPath").Value);
            }
Exemple #6
0
            public void WhenStoreSchema_ShouldStore()
            {
                // Arrange
                const string configPath = "app.config";

                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                .MockIisExpressConfig_RealDocumentInitialized(configPath)
                .MockIisExpressConfig_StoreSchema(configPath);

                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);

                // Act, Assert
                config.StoreSchema();
            }
Exemple #7
0
            public void WhenGetApplicationProperty_IfAppNotFound_ShouldReturnNull()
            {
                // Arrange
                const string configPath = "app.config";

                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                .MockIisExpressConfig_RealDocumentInitialized(configPath);

                // Act
                var config   = new IisExpressConfig(configPath, _mock.FileSystem.Object);
                var property = config.GetApplicationProperty("unknownapp", "unknownproperty");

                // Assert
                Assert.Null(property);
            }
Exemple #8
0
            public void WhenGetApplicationProperty_IfAppExist_ShouldReturnProperty()
            {
                // Arrange
                const string configPath = "app.config";

                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                .MockIisExpressConfig_RealDocumentInitialized(configPath);

                // Act
                var config   = new IisExpressConfig(configPath, _mock.FileSystem.Object);
                var property = config.GetApplicationProperty("", "physicalPath");

                // Assert
                Assert.Equal(@"%IIS_SITES_HOME%\WebSite1", property);
            }
Exemple #9
0
            public void WhenSetDefaultApplicationPool_ShouldSet()
            {
                // Arrange
                const string configPath = "app.config";

                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                .MockIisExpressConfig_RealDocumentInitialized(configPath);

                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);

                // Act
                config.SetDefaultApplicationPool("mypool");

                //Assert
                var xappPoolDefaults = config.Root.Document.Descendants("applicationDefaults").First();

                Assert.Equal(@"mypool", xappPoolDefaults.Attribute("applicationPool").Value);
            }
            public void WhenGetApplicationProperty_IfAppNotFound_ShouldReturnNull()
            {
                // Arrange 
                const string configPath = "app.config";
                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                    .MockIisExpressConfig_RealDocumentInitialized(configPath);

                // Act
                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);
                var property = config.GetApplicationProperty("unknownapp", "unknownproperty");

                // Assert 
                Assert.Null(property);
            }
            public void WhenRemoveAllApplications_ShouldRemove()
            {
                // Arrange 
                const string configPath = "app.config";
                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                    .MockIisExpressConfig_RealDocumentInitialized(configPath);

                // Act
                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);
                config.RemoveAllApplications();

                //Assert
                XElement site = null;
                var xDefaultSites = config.Root.Document.Descendants("site").Where(s => s.Attribute("id").Value == "1").ToList();
                if (xDefaultSites.Any())
                {
                    site = xDefaultSites.First();
                }
                var xapplications = site.Descendants("application").ToList();

                Assert.False(xapplications.Any(a => a.Attribute("path").Value.Equals("/", StringComparison.InvariantCultureIgnoreCase)));
            }
            public void WhenAddBinding_IfAppExist_ShouldOverwrite()
            {
                // Arrange 
                const string configPath = "app.config";
                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                    .MockIisExpressConfig_RealDocumentInitialized(configPath);

                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);
                XElement site = null;
                var xDefaultSites = config.Root.Document.Descendants("site").Where(s => s.Attribute("id").Value == "1").ToList();
                if (xDefaultSites.Any())
                {
                    site = xDefaultSites.First();
                }

                // Act
                var binding = config.AddBinding("http", @"xxxx");

                //Assert
                Assert.True(site.Descendants("bindings").Any());
                Assert.Equal(@"xxxx", binding.Attribute("bindingInformation").Value);
            }
            public void WhenRemoveBinding_IfAppDoesNotExist_ShouldAdd()
            {
                // Arrange 
                const string configPath = "app.config";
                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                    .MockIisExpressConfig_RealDocumentInitialized(configPath);

                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);
                XElement site = null;
                var xDefaultSites = config.Root.Document.Descendants("site").Where(s => s.Attribute("id").Value == "1").ToList();
                if (xDefaultSites.Any())
                {
                    site = xDefaultSites.First();
                }
                var xbindings = site.Descendants("bindings").First();
                Assert.Equal(2, xbindings.Descendants().Count());

                // Act
                config.RemoveBinding("http");
                config.RemoveBinding("https");

                //Assert
                Assert.False(xbindings.Descendants().Any());
            }
            public void WhenAddApplicationPool_IfAppPoolExist_ShouldOverwrite()
            {
                // Arrange 
                const string configPath = "app.config";
                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                    .MockIisExpressConfig_RealDocumentInitialized(configPath);

                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);

                // Act
                var pool = config.AddApplicationPool("Clr4IntegratedAppPool", @"aaa", "mmm", "qqq");

                //Assert
                var xapppools = config.Root.Document.Descendants("applicationPools").ToList();
                var processModel = pool.Descendants().First();
                Assert.True(xapppools.Any());
                Assert.Equal(8, xapppools.Descendants().Count());
                Assert.Equal(@"Clr4IntegratedAppPool", pool.Attribute("name").Value);
                Assert.Equal(@"aaa", pool.Attribute("managedRuntimeVersion").Value);
                Assert.Equal(@"mmm", pool.Attribute("managedPipelineMode").Value);
                Assert.Equal(@"qqq", processModel.Attribute("identityType").Value);
            }
            public void WhenSetDefaultApplicationPool_ShouldSet()
            {
                // Arrange 
                const string configPath = "app.config";
                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                    .MockIisExpressConfig_RealDocumentInitialized(configPath);

                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);

                // Act
                config.SetDefaultApplicationPool("mypool");

                //Assert
                var xappPoolDefaults = config.Root.Document.Descendants("applicationDefaults").First();
                Assert.Equal(@"mypool", xappPoolDefaults.Attribute("applicationPool").Value);
            }
            public void WhenGetApplicationProperty_IfAppExist_ShouldReturnProperty()
            {
                // Arrange 
                const string configPath = "app.config";
                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                    .MockIisExpressConfig_RealDocumentInitialized(configPath);

                // Act
                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);
                var property = config.GetApplicationProperty("", "physicalPath");

                // Assert 
                Assert.Equal(@"%IIS_SITES_HOME%\WebSite1", property);
            }
            public void WhenAddApplication_IfAppDoesNotExist_ShouldAdd()
            {
                // Arrange 
                const string configPath = "app.config";
                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                    .MockIisExpressConfig_RealDocumentInitialized(configPath);

                // Act
                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);
                var app = config.AddApplication("MyApp", @"c:\somepath");

                //Assert
                XElement site = null;
                var xDefaultSites = config.Root.Document.Descendants("site").Where(s => s.Attribute("id").Value == "1").ToList();
                if (xDefaultSites.Any())
                {
                    site = xDefaultSites.First();
                }
                var xapplications = site.Descendants("application").ToList();

                Assert.True(xapplications.Any(a => a.Attribute("path").Value.Equals("/MyApp", StringComparison.InvariantCultureIgnoreCase)));
                Assert.Equal(@"c:\somepath", app.Descendants().First().Attribute("physicalPath").Value);
            }
            public void WhenStoreSchema_ShouldStore()
            {
                // Arrange 
                const string configPath = "app.config";
                _mock.MockIisExpressConfig_ApplicationConfigFound(configPath)
                    .MockIisExpressConfig_RealDocumentInitialized(configPath)
                    .MockIisExpressConfig_StoreSchema(configPath);

                var config = new IisExpressConfig(configPath, _mock.FileSystem.Object);

                // Act, Assert
                config.StoreSchema();
            }