コード例 #1
0
        public void TestRemove()
        {
            SetUp();

            const string expected = @"expected_add.site.config";
            var          site     = Path.Combine("Website1", "web.config");
            var          document = XDocument.Load(site);

            document.Save(expected);

            var item = new TraceFailedRequestsItem(null);

            item.Path  = "*.php";
            item.Codes = "200-999";
            _feature.AddItem(item);

            Assert.Equal("*.php", _feature.SelectedItem.Path);
            Assert.Equal(3, _feature.Items.Count);
            _feature.Remove();
            Assert.Null(_feature.SelectedItem);
            Assert.Equal(2, _feature.Items.Count);

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

            XmlAssert.Equal(Helper.IsRunningOnMono() ? OriginalMono : Original, Current);
            XmlAssert.Equal(expected, site);
        }
コード例 #2
0
        public void TestAdd()
        {
            SetUp();
            const string Expected = @"expected_add.config";
            var          document = XDocument.Load(Current);
            var          node     = document.Root?.XPathSelectElement("/configuration/system.webServer/tracing/traceFailedRequests");

            node?.Add(
                new XElement("add",
                             new XAttribute("path", "*.php"),
                             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 item = new TraceFailedRequestsItem(null);

            item.Path  = "*.php";
            item.Codes = "200-999";
            _feature.AddItem(item);
            Assert.NotNull(_feature.SelectedItem);
            Assert.Equal("*.php", _feature.SelectedItem.Path);
            Assert.Equal(3, _feature.Items.Count);
            XmlAssert.Equal(Expected, Current);
        }