Ejemplo n.º 1
0
        public async void TestMoveDown()
        {
            await SetUp();

            var item = new HandlersItem(null);

            item.Name = "test";
            item.Path = "*";
            _feature.AddItem(item);

            var last     = 82;
            var previous = last - 1;

            _feature.SelectedItem = _feature.Items[previous];
            var expected = "test";

            Assert.Equal(expected, _feature.Items[last].Name);
            var original = "StaticFile";

            Assert.Equal(original, _feature.Items[previous].Name);
            _feature.MoveDown();
            Assert.NotNull(_feature.SelectedItem);
            Assert.Equal(original, _feature.SelectedItem.Name);
            Assert.Equal(expected, _feature.Items[previous].Name);
            Assert.Equal(original, _feature.Items[last].Name);

            const string Expected     = @"expected_up1.site.config";
            const string ExpectedMono = @"expected_up.site.mono.config";

            XmlAssert.Equal(Path.Combine("Handlers", Helper.IsRunningOnMono() ? ExpectedMono : Expected), Current);
            XmlAssert.Equal(Path.Combine("Website1", "original.config"), Path.Combine("Website1", "web.config"));
        }
Ejemplo n.º 2
0
        public async void TestEdit()
        {
            await this.SetUp();

            var item = new HandlersItem(null);

            item.Name = "test";
            item.Path = "*";

            _feature.AddItem(item);

            Assert.Equal("test", _feature.SelectedItem.Name);
            Assert.Equal(83, _feature.Items.Count);
            item.AllowPathInfo = true;
            _feature.EditItem(item);
            Assert.NotNull(_feature.SelectedItem);
            Assert.Equal(true, _feature.SelectedItem.AllowPathInfo);
            Assert.Equal(83, _feature.Items.Count);

            const string Expected     = @"expected_edit1.site.config";
            const string ExpectedMono = @"expected_edit1.site.mono.config";

            XmlAssert.Equal(Path.Combine("Handlers", Helper.IsRunningOnMono() ? ExpectedMono : Expected), Current);
            XmlAssert.Equal(Path.Combine("Website1", "original.config"), Path.Combine("Website1", "web.config"));
        }
        public void TestRevert()
        {
            SetUp();

            const string Expected = @"expected_add.site.config";
            var          document = XDocument.Load(Current);
            var          node     = new XElement("location");

            node.SetAttributeValue("path", "WebSite1");
            document.Root?.Add(node);
            var web = new XElement("system.webServer");

            node.Add(web);
            document.Save(Expected);

            var item = new HandlersItem(null);

            item.Name = "test";
            item.Path = "*";
            _feature.AddItem(item);

            _feature.Revert();
            Assert.Null(_feature.SelectedItem);
            Assert.Equal(82, _feature.Items.Count);

            XmlAssert.Equal(Expected, Current);
            XmlAssert.Equal(Path.Combine("Website1", "original.config"), Path.Combine("Website1", "web.config"));
        }
        public void TestAdd()
        {
            SetUp();
            const string Expected = @"expected_add.config";
            var          document = XDocument.Load(Current);
            var          node     = document.Root?.XPathSelectElement("/configuration/location[@path='']/system.webServer/handlers");

            node?.Add(
                new XElement("add",
                             new XAttribute("modules", ""),
                             new XAttribute("resourceType", "File"),
                             new XAttribute("verb", "*"),
                             new XAttribute("name", "test"),
                             new XAttribute("path", "*")));
            document.Save(Expected);

            var item = new HandlersItem(null);

            item.Name = "test";
            item.Path = "*";
            _feature.AddItem(item);
            Assert.NotNull(_feature.SelectedItem);
            Assert.Equal("test", _feature.SelectedItem.Name);
            Assert.Equal(83, _feature.Items.Count);
            XmlAssert.Equal(Expected, Current);
        }
        public void TestAdd()
        {
            SetUp();

            const string Expected = @"expected_add.site.config";
            var          document = XDocument.Load(Current);

            document.Root?.Add(
                new XElement("location",
                             new XAttribute("path", "WebSite1"),
                             new XElement("system.webServer",
                                          new XElement("handlers",
                                                       new XElement("add",
                                                                    new XAttribute("resourceType", "File"),
                                                                    new XAttribute("modules", ""),
                                                                    new XAttribute("name", "test"),
                                                                    new XAttribute("path", "*"),
                                                                    new XAttribute("verb", "*"))))));
            document.Save(Expected);

            var item = new HandlersItem(null);

            item.Name = "test";
            item.Path = "*";
            _feature.AddItem(item);
            Assert.NotNull(_feature.SelectedItem);
            Assert.Equal("test", _feature.SelectedItem.Name);

            XmlAssert.Equal(Expected, Current);
            XmlAssert.Equal(Path.Combine("Website1", "original.config"), Path.Combine("Website1", "web.config"));
        }
        public void TestMoveDown()
        {
            SetUp();

            const string Expected = @"expected_add.site.config";
            var          document = XDocument.Load(Current);

            document.Root?.Add(
                new XElement("location",
                             new XAttribute("path", "WebSite1"),
                             new XElement("system.webServer",
                                          new XElement("handlers",
                                                       new XElement("remove",
                                                                    new XAttribute("name", "StaticFile")),
                                                       new XElement("add",
                                                                    new XAttribute("resourceType", "File"),
                                                                    new XAttribute("modules", ""),
                                                                    new XAttribute("name", "test"),
                                                                    new XAttribute("path", "*"),
                                                                    new XAttribute("verb", "*")),
                                                       new XElement("add",
                                                                    new XAttribute("modules", "StaticFileModule,DefaultDocumentModule,DirectoryListingModule"),
                                                                    new XAttribute("name", "StaticFile"),
                                                                    new XAttribute("path", "*"),
                                                                    new XAttribute("requireAccess", "Read"),
                                                                    new XAttribute("resourceType", "Either"),
                                                                    new XAttribute("verb", "*"))))));
            document.Save(Expected);

            var item = new HandlersItem(null);

            item.Name = "test";
            item.Path = "*";
            _feature.AddItem(item);

            var last     = 82;
            var previous = last - 1;

            _feature.SelectedItem = _feature.Items[previous];
            var expected = "test";

            Assert.Equal(expected, _feature.Items[last].Name);
            var original = "StaticFile";

            Assert.Equal(original, _feature.Items[previous].Name);
            _feature.MoveDown();
            Assert.NotNull(_feature.SelectedItem);
            Assert.Equal(original, _feature.SelectedItem.Name);
            Assert.Equal(expected, _feature.Items[previous].Name);
            Assert.Equal(original, _feature.Items[last].Name);

            XmlAssert.Equal(Expected, Current);
            XmlAssert.Equal(Path.Combine("Website1", "original.config"), Path.Combine("Website1", "web.config"));
        }
        public void TestEdit()
        {
            SetUp();

            const string Expected = @"expected_add.site.config";
            var          document = XDocument.Load(Current);
            var          node     = new XElement("location");

            node.SetAttributeValue("path", "WebSite1");
            document.Root?.Add(node);
            var web = new XElement("system.webServer");

            node.Add(web);
            var content = new XElement("handlers");

            web.Add(content);
            var add = new XElement("add");

            add.SetAttributeValue("resourceType", "File");
            add.SetAttributeValue("allowPathInfo", "true");
            add.SetAttributeValue("modules", "");
            add.SetAttributeValue("name", "test");
            add.SetAttributeValue("path", "*");
            add.SetAttributeValue("verb", "*");
            content.Add(add);
            document.Save(Expected);

            var item = new HandlersItem(null);

            item.Name = "test";
            item.Path = "*";

            _feature.AddItem(item);

            Assert.Equal("test", _feature.SelectedItem.Name);
            Assert.Equal(83, _feature.Items.Count);
            item.AllowPathInfo = true;
            _feature.EditItem(item);
            Assert.NotNull(_feature.SelectedItem);
            Assert.Equal(true, _feature.SelectedItem.AllowPathInfo);
            Assert.Equal(83, _feature.Items.Count);

            XmlAssert.Equal(Expected, Current);
            XmlAssert.Equal(Path.Combine("Website1", "original.config"), Path.Combine("Website1", "web.config"));
        }
        public async void TestAdd()
        {
            await this.SetUp();
            const string Expected = @"expected_add.config";
            const string ExpectedMono = @"expected_add.mono.config";

            var item = new HandlersItem(null);
            item.Name = "test";
            item.Path = "*";
            _feature.AddItem(item);
            Assert.NotNull(_feature.SelectedItem);
            Assert.Equal("test", _feature.SelectedItem.Name);
            Assert.Equal(83, _feature.Items.Count);
            XmlAssert.Equal(
                Helper.IsRunningOnMono()
                    ? Path.Combine("Handlers", ExpectedMono)
                    : Path.Combine("Handlers", Expected),
                Current);
        }
Ejemplo n.º 9
0
        public async void TestRevert()
        {
            await SetUp();

            var item = new HandlersItem(null);

            item.Name = "test";
            item.Path = "*";
            _feature.AddItem(item);

            _feature.Revert();
            Assert.Null(_feature.SelectedItem);
            Assert.Equal(82, _feature.Items.Count);

            const string Expected     = @"expected_revert.site.config";
            const string ExpectedMono = @"expected_revert.site.mono.config";

            XmlAssert.Equal(Path.Combine("Handlers", Helper.IsRunningOnMono() ? ExpectedMono : Expected), Current);
            XmlAssert.Equal(Path.Combine("Website1", "original.config"), Path.Combine("Website1", "web.config"));
        }
        public void TestMoveUp()
        {
            SetUp();

            const string Expected = @"expected_add.site.config";
            var          document = XDocument.Load(Current);
            var          node     = new XElement("location");

            node.SetAttributeValue("path", "WebSite1");
            document.Root?.Add(node);
            var web = new XElement("system.webServer");

            node.Add(web);
            var content = new XElement("handlers");

            web.Add(content);
            var clear = new XElement("clear");

            content.Add(clear);
            var all = document.Root?.XPathSelectElement("/configuration/location[@path='']/system.webServer/handlers");

            if (all != null)
            {
                foreach (var element in all.Elements())
                {
                    content.Add(element);
                }
            }

            content.LastNode.Remove();

            var add = new XElement("add");

            add.SetAttributeValue("resourceType", "File");
            add.SetAttributeValue("modules", "");
            add.SetAttributeValue("name", "test");
            add.SetAttributeValue("path", "*");
            add.SetAttributeValue("verb", "*");
            content.Add(add);
            var one = new XElement("add");

            one.SetAttributeValue("modules", "StaticFileModule,DefaultDocumentModule,DirectoryListingModule");
            one.SetAttributeValue("name", "StaticFile");
            one.SetAttributeValue("path", "*");
            one.SetAttributeValue("requireAccess", "Read");
            one.SetAttributeValue("resourceType", "Either");
            one.SetAttributeValue("verb", "*");
            content.Add(one);
            document.Save(Expected);

            var item = new HandlersItem(null);

            item.Name = "test";
            item.Path = "*";
            _feature.AddItem(item);

            var last     = 82;
            var previous = last - 1;

            _feature.SelectedItem = _feature.Items[last];
            var expected = "test";

            Assert.Equal(expected, _feature.Items[last].Name);
            var original = "StaticFile";

            Assert.Equal(original, _feature.Items[previous].Name);
            _feature.MoveUp();
            Assert.NotNull(_feature.SelectedItem);
            Assert.Equal(expected, _feature.SelectedItem.Name);
            Assert.Equal(expected, _feature.Items[previous].Name);
            Assert.Equal(original, _feature.Items[last].Name);

            XmlAssert.Equal(Expected, Current);
            XmlAssert.Equal(Path.Combine("Website1", "original.config"), Path.Combine("Website1", "web.config"));
        }