From 787e544573f2d26e153136f1cb308ec7b08c1995 Mon Sep 17 00:00:00 2001 From: Anton Firszov Date: Fri, 18 Aug 2017 20:42:52 +0200 Subject: [PATCH] provider.GetImage(new JpegDecoder()) --- .../Formats/Jpg/JpegDecoderTests.cs | 31 +++++++++++++------ 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/tests/ImageSharp.Tests/Formats/Jpg/JpegDecoderTests.cs b/tests/ImageSharp.Tests/Formats/Jpg/JpegDecoderTests.cs index 13a7705dd..e77ebb92b 100644 --- a/tests/ImageSharp.Tests/Formats/Jpg/JpegDecoderTests.cs +++ b/tests/ImageSharp.Tests/Formats/Jpg/JpegDecoderTests.cs @@ -66,7 +66,7 @@ namespace ImageSharp.Tests this.Output.WriteLine(provider.SourceFileOrDescription); provider.Utility.TestName = nameof(this.DecodeBaselineJpeg); - using (Image image = provider.GetImage()) + using (Image image = provider.GetImage(new JpegDecoder())) { double d = this.GetDifferenceInPercents(image, provider); this.Output.WriteLine($"Difference using ORIGINAL decoder: {d:0.0000}%"); @@ -84,7 +84,7 @@ namespace ImageSharp.Tests public void DecodeBaselineJpeg(TestImageProvider provider) where TPixel : struct, IPixel { - using (Image image = provider.GetImage()) + using (Image image = provider.GetImage(new JpegDecoder())) { image.DebugSave(provider); image.CompareToReferenceOutput(provider, VeryTolerantJpegComparer, appendPixelTypeToFileName: false); @@ -110,12 +110,25 @@ namespace ImageSharp.Tests public void DecodeProgressiveJpeg(TestImageProvider provider) where TPixel : struct, IPixel { - using (Image image = provider.GetImage()) + using (Image image = provider.GetImage(new JpegDecoder())) { image.DebugSave(provider, VeryTolerantJpegComparer); } } + + [Theory] + [WithFileCollection(nameof(ProgressiveTestJpegs), PixelTypes.Rgba32 | PixelTypes.Rgba32 | PixelTypes.Argb32)] + public void DecodeProgressiveJpeg_PdfJs(TestImageProvider provider) + where TPixel : struct, IPixel + { + using (Image image = provider.GetImage(new PdfJsJpegDecoder())) + { + image.DebugSave(provider, VeryTolerantJpegComparer); + } + } + + [Theory] [WithSolidFilledImages(16, 16, 255, 0, 0, PixelTypes.Rgba32, JpegSubsample.Ratio420, 75)] [WithSolidFilledImages(16, 16, 255, 0, 0, PixelTypes.Rgba32, JpegSubsample.Ratio420, 100)] @@ -131,16 +144,16 @@ namespace ImageSharp.Tests byte[] data; using (Image image = provider.GetImage()) { - JpegEncoder encoder = new JpegEncoder { Subsample = subsample, Quality = quality }; + var encoder = new JpegEncoder { Subsample = subsample, Quality = quality }; data = new byte[65536]; - using (MemoryStream ms = new MemoryStream(data)) + using (var ms = new MemoryStream(data)) { image.Save(ms, encoder); } } - Image mirror = Image.Load(data); + var mirror = Image.Load(data); mirror.DebugSave(provider, $"_{subsample}_Q{quality}"); } @@ -152,14 +165,14 @@ namespace ImageSharp.Tests { using (Image image = provider.GetImage()) { - using (MemoryStream ms = new MemoryStream()) + using (var ms = new MemoryStream()) { image.Save(ms, new JpegEncoder()); ms.Seek(0, SeekOrigin.Begin); - using (JpegDecoderCore decoder = new JpegDecoderCore(null, new JpegDecoder())) + using (var decoder = new JpegDecoderCore(null, new JpegDecoder())) { - Image mirror = decoder.Decode(ms); + decoder.Decode(ms); Assert.Equal(decoder.ImageWidth, image.Width); Assert.Equal(decoder.ImageHeight, image.Height);