コード例 #1
0
        public void TestMoveDown()
        {
            SetUp();
            const string Expected = @"expected_up.config";
            var          document = XDocument.Load(Current);
            var          node     = document.Root?.XPathSelectElement("/configuration/system.webServer/tracing/traceFailedRequests");
            var          node1    = document.Root?.XPathSelectElement("/configuration/system.webServer/tracing/traceFailedRequests/add[@path='*.aspx']");
            var          node2    = document.Root?.XPathSelectElement("/configuration/system.webServer/tracing/traceFailedRequests/add[@path='*.asp']");

            node1?.Remove();
            node2?.Remove();
            node?.AddFirst(node2);
            node?.AddFirst(node1);
            document.Save(Expected);

            _feature.SelectedItem = _feature.Items[0];
            var other = "*.aspx";

            Assert.Equal(other, _feature.Items[1].Path);
            var selected = "*.asp";

            Assert.Equal(selected, _feature.Items[0].Path);
            _feature.MoveDown();
            Assert.NotNull(_feature.SelectedItem);
            Assert.Equal(selected, _feature.SelectedItem.Path);
            Assert.Equal(other, _feature.Items[0].Path);
            Assert.Equal(selected, _feature.Items[1].Path);
            XmlAssert.Equal(Expected, Current);
        }
コード例 #2
0
        public void TestMoveDown()
        {
            SetUp();

            const string expected = @"expected_add.site.config";
            var          site     = Path.Combine("Website1", "web.config");
            var          document = XDocument.Load(site);
            var          server   = document.Root?.XPathSelectElement("/configuration/system.webServer");

            server?.Add(
                new XElement("tracing",
                             new XElement("traceFailedRequests",
                                          new XElement("remove",
                                                       new XAttribute("path", "*.asp")),
                                          new XElement("add",
                                                       new XAttribute("path", "*.asp"),
                                                       new XElement("traceAreas",
                                                                    new XElement("add",
                                                                                 new XAttribute("provider", "ASP"),
                                                                                 new XAttribute("verbosity", "Verbose")),
                                                                    new XElement("add",
                                                                                 new XAttribute("provider", "ASPNET"),
                                                                                 new XAttribute("areas", "Infrastructure,Module,Page,AppServices"),
                                                                                 new XAttribute("verbosity", "Verbose")),
                                                                    new XElement("add",
                                                                                 new XAttribute("provider", "ISAPI Extension"),
                                                                                 new XAttribute("verbosity", "Verbose")),
                                                                    new XElement("add",
                                                                                 new XAttribute("provider", "WWW Server"),
                                                                                 new XAttribute("areas", "Authentication,Security,Filter,StaticFile,CGI,Compression,Cache,RequestNotifications,Module,Rewrite,WebSocket"),
                                                                                 new XAttribute("verbosity", "Verbose"))),
                                                       new XElement("failureDefinitions",
                                                                    new XAttribute("statusCodes", "200-999"))
                                                       ))));
            document.Save(expected);

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

            _feature.SelectedItem = _feature.Items[previous];
            var expectedValue = "*.aspx";

            Assert.Equal(expectedValue, _feature.Items[last].Path);
            var original = "*.asp";

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

            const string Original     = @"original.config";
            const string OriginalMono = @"original.mono.config";

            XmlAssert.Equal(Helper.IsRunningOnMono() ? OriginalMono : Original, Current);
            XmlAssert.Equal(expected, site);
        }