public void Minify() { // Given string input = @"<?xml version=""1.0"" encoding=""utf-8"" standalone=""yes""?> <urlset xmlns=""http://www.sitemaps.org/schemas/sitemap/0.9""> <!-- Homepage --> <url> <loc>http://wyam.io/</loc> <changefreq>weekly</changefreq> <priority>0.9</priority> </url> <!-- Content Page --> <url> <loc>http://wyam.io/modules/minifyxml</loc> <changefreq>monthly</changefreq> <priority>0.7</priority> </url> </urlset>"; string output = @"<?xml version=""1.0"" encoding=""utf-8"" standalone=""yes""?><urlset xmlns=""http://www.sitemaps.org/schemas/sitemap/0.9""><url><loc>http://wyam.io/</loc><changefreq>weekly</changefreq><priority>0.9</priority></url><url><loc>http://wyam.io/modules/minifyxml</loc><changefreq>monthly</changefreq><priority>0.7</priority></url></urlset>"; IExecutionContext context = Substitute.For <IExecutionContext>(); IDocument document = Substitute.For <IDocument>(); document.Content.Returns(input); MinifyXml minifyXml = new MinifyXml(); // When minifyXml.Execute(new[] { document }, context).ToList(); // Make sure to materialize the result list // Then context.Received(1).GetDocument(Arg.Any <IDocument>(), Arg.Any <string>()); context.Received().GetDocument(document, output); }
public void Minify() { // Given string input = @"<?xml version=""1.0"" encoding=""utf-8"" standalone=""yes""?> <urlset xmlns=""http://www.sitemaps.org/schemas/sitemap/0.9""> <!-- Homepage --> <url> <loc>https://wyam.io/</loc> <changefreq>weekly</changefreq> <priority>0.9</priority> </url> <!-- Content Page --> <url> <loc>https://wyam.io/modules/minifyxml</loc> <changefreq>monthly</changefreq> <priority>0.7</priority> </url> </urlset>"; string output = @"<?xml version=""1.0"" encoding=""utf-8"" standalone=""yes""?><urlset xmlns=""http://www.sitemaps.org/schemas/sitemap/0.9""><url><loc>https://wyam.io/</loc><changefreq>weekly</changefreq><priority>0.9</priority></url><url><loc>https://wyam.io/modules/minifyxml</loc><changefreq>monthly</changefreq><priority>0.7</priority></url></urlset>"; TestExecutionContext context = new TestExecutionContext(); TestDocument document = new TestDocument(input); MinifyXml minifyXml = new MinifyXml(); // When IList <IDocument> results = minifyXml.Execute(new[] { document }, context).ToList(); // Make sure to materialize the result list // Then results.Single().Content.ShouldBe(output, StringCompareShould.IgnoreLineEndings); }
public void Minify() { // Given string input = @"<?xml version=""1.0"" encoding=""utf-8"" standalone=""yes""?> <urlset xmlns=""http://www.sitemaps.org/schemas/sitemap/0.9""> <!-- Homepage --> <url> <loc>http://wyam.io/</loc> <changefreq>weekly</changefreq> <priority>0.9</priority> </url> <!-- Content Page --> <url> <loc>http://wyam.io/modules/minifyxml</loc> <changefreq>monthly</changefreq> <priority>0.7</priority> </url> </urlset>"; string output = @"<?xml version=""1.0"" encoding=""utf-8"" standalone=""yes""?><urlset xmlns=""http://www.sitemaps.org/schemas/sitemap/0.9""><url><loc>http://wyam.io/</loc><changefreq>weekly</changefreq><priority>0.9</priority></url><url><loc>http://wyam.io/modules/minifyxml</loc><changefreq>monthly</changefreq><priority>0.7</priority></url></urlset>"; IExecutionContext context = Substitute.For<IExecutionContext>(); IDocument document = Substitute.For<IDocument>(); document.Content.Returns(input); MinifyXml minifyXml = new MinifyXml(); // When minifyXml.Execute(new[] { document }, context).ToList(); // Make sure to materialize the result list // Then context.Received(1).GetDocument(Arg.Any<IDocument>(), Arg.Any<string>()); context.Received().GetDocument(document, output); }