From 57c21370a150f6a0c5e607fb38abd3ee43069e3f Mon Sep 17 00:00:00 2001 From: Brian Popow Date: Tue, 2 Aug 2022 13:39:48 +0200 Subject: [PATCH] Add test for legacy tga format --- .../Formats/Tga/TgaDecoderTests.cs | 14 ++++++++++++++ tests/ImageSharp.Tests/TestImages.cs | 2 ++ tests/Images/Input/Tga/Github_RLE_legacy.tga | 3 +++ 3 files changed, 19 insertions(+) create mode 100644 tests/Images/Input/Tga/Github_RLE_legacy.tga diff --git a/tests/ImageSharp.Tests/Formats/Tga/TgaDecoderTests.cs b/tests/ImageSharp.Tests/Formats/Tga/TgaDecoderTests.cs index f3aa38df99..57d8aeff51 100644 --- a/tests/ImageSharp.Tests/Formats/Tga/TgaDecoderTests.cs +++ b/tests/ImageSharp.Tests/Formats/Tga/TgaDecoderTests.cs @@ -733,6 +733,20 @@ namespace SixLabors.ImageSharp.Tests.Formats.Tga } } + // Test case for legacy format, when RLE crosses multiple lines: + // https://github.com/SixLabors/ImageSharp/pull/2172 + [Theory] + [WithFile(Github_RLE_legacy, PixelTypes.Rgba32)] + public void TgaDecoder_CanDecode_LegacyFormat(TestImageProvider provider) + where TPixel : unmanaged, IPixel + { + using (Image image = provider.GetImage(TgaDecoder)) + { + image.DebugSave(provider); + ImageComparingUtils.CompareWithReferenceDecoder(provider, image); + } + } + [Theory] [WithFile(Bit16BottomLeft, PixelTypes.Rgba32)] [WithFile(Bit24BottomLeft, PixelTypes.Rgba32)] diff --git a/tests/ImageSharp.Tests/TestImages.cs b/tests/ImageSharp.Tests/TestImages.cs index 3efb528a82..558a04290b 100644 --- a/tests/ImageSharp.Tests/TestImages.cs +++ b/tests/ImageSharp.Tests/TestImages.cs @@ -544,6 +544,8 @@ namespace SixLabors.ImageSharp.Tests public const string NoAlphaBits16BitRle = "Tga/16bit_rle_noalphabits.tga"; public const string NoAlphaBits32Bit = "Tga/32bit_no_alphabits.tga"; public const string NoAlphaBits32BitRle = "Tga/32bit_rle_no_alphabits.tga"; + + public const string Github_RLE_legacy = "Tga/Github_RLE_legacy.tga"; } public static class Webp diff --git a/tests/Images/Input/Tga/Github_RLE_legacy.tga b/tests/Images/Input/Tga/Github_RLE_legacy.tga new file mode 100644 index 0000000000..0cb1f73c19 --- /dev/null +++ b/tests/Images/Input/Tga/Github_RLE_legacy.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3570d2883a10a764577dd5174a9168320e8653b220800714da8e3880f752ab5e +size 51253