Browse Source

More tests

af/merge-core
James Jackson-South 8 years ago
parent
commit
6036a48bfa
  1. 23
      tests/ImageSharp.Tests/Formats/Png/PngDecoderTests.cs
  2. 15
      tests/ImageSharp.Tests/PixelFormats/Rgb48Tests.cs
  3. 17
      tests/ImageSharp.Tests/PixelFormats/Rgba64Tests.cs
  4. 3
      tests/ImageSharp.Tests/TestImages.cs
  5. 2
      tests/Images/External
  6. 0
      tests/Images/Input/Png/gray-16-tRNS-interlaced.png
  7. 3
      tests/Images/Input/Png/gray-alpha-8.png

23
tests/ImageSharp.Tests/Formats/Png/PngDecoderTests.cs

@ -79,6 +79,7 @@ namespace SixLabors.ImageSharp.Tests
TestImages.Png.VimImage2, TestImages.Png.VimImage2,
TestImages.Png.Rgb24BppTrans, TestImages.Png.Rgb24BppTrans,
TestImages.Png.GrayAlpha8Bit
}; };
public static readonly string[] TestImages48Bpp = public static readonly string[] TestImages48Bpp =
@ -101,21 +102,23 @@ namespace SixLabors.ImageSharp.Tests
public static readonly string[] TestImagesGrayAlpha16Bit = public static readonly string[] TestImagesGrayAlpha16Bit =
{ {
TestImages.Png.GrayAlpha16Bit, TestImages.Png.GrayAlpha16Bit,
TestImages.Png.GrayTrns16Bit TestImages.Png.GrayTrns16BitInterlaced
}; };
// This is a workaround for Mono-s decoder being incompatible with ours and GDI+. // This is a workaround for Mono-s decoder being incompatible with ours and GDI+.
// We shouldn't mix these with the Interleaved cases (which are also failing with Mono System.Drawing). Let's go AAA! // We shouldn't mix these with the Interleaved cases (which are also failing with Mono System.Drawing). Let's go AAA!
private static readonly string[] SkipOnMono = private static readonly string[] SkipOnMono =
{ {
TestImages.Png.Bad.ChunkLength2, TestImages.Png.Bad.ChunkLength2,
TestImages.Png.VimImage2, TestImages.Png.VimImage2,
TestImages.Png.Splash, TestImages.Png.Splash,
TestImages.Png.Indexed, TestImages.Png.Indexed,
TestImages.Png.Bad.ChunkLength1, TestImages.Png.Bad.ChunkLength1,
TestImages.Png.VersioningImage1, TestImages.Png.VersioningImage1,
TestImages.Png.Banner7Adam7InterlaceMode, TestImages.Png.Banner7Adam7InterlaceMode,
}; TestImages.Png.GrayTrns16BitInterlaced,
TestImages.Png.Rgb48BppInterlaced
};
private static bool SkipVerification(ITestImageProvider provider) private static bool SkipVerification(ITestImageProvider provider)
{ {

15
tests/ImageSharp.Tests/PixelFormats/Rgb48Tests.cs

@ -103,6 +103,21 @@ namespace SixLabors.ImageSharp.Tests.PixelFormats
Assert.Equal(expected, actual); Assert.Equal(expected, actual);
} }
[Fact]
public void Rgb48_ToArgb32()
{
// arrange
var rgba48 = new Rgb48(0.08f, 0.15f, 0.30f);
var actual = default(Argb32);
var expected = new Argb32(20, 38, 76, 255);
// act
rgba48.ToArgb32(ref actual);
// assert
Assert.Equal(expected, actual);
}
[Fact] [Fact]
public void Rgba64_ToBgr24() public void Rgba64_ToBgr24()
{ {

17
tests/ImageSharp.Tests/PixelFormats/Rgba64Tests.cs

@ -105,6 +105,21 @@ namespace SixLabors.ImageSharp.Tests.PixelFormats
Assert.Equal(expected, actual); Assert.Equal(expected, actual);
} }
[Fact]
public void Rgba64_ToArgb32()
{
// arrange
var rgba64 = new Rgba64(0.08f, 0.15f, 0.30f, 0.45f);
var actual = default(Argb32);
var expected = new Argb32(20, 38, 76, 115);
// act
rgba64.ToArgb32(ref actual);
// assert
Assert.Equal(expected, actual);
}
[Fact] [Fact]
public void Rgba64_ToBgr24() public void Rgba64_ToBgr24()
{ {
@ -155,7 +170,7 @@ namespace SixLabors.ImageSharp.Tests.PixelFormats
public void Rgb48_PackFromRgb48_ToRgb48() public void Rgb48_PackFromRgb48_ToRgb48()
{ {
// arrange // arrange
var input = default(Rgb48); var input = default(Rgba64);
var actual = default(Rgb48); var actual = default(Rgb48);
var expected = new Rgb48(65535, 0, 65535); var expected = new Rgb48(65535, 0, 65535);

3
tests/ImageSharp.Tests/TestImages.cs

@ -28,8 +28,9 @@ namespace SixLabors.ImageSharp.Tests
public const string Bpp1 = "Png/bpp1.png"; public const string Bpp1 = "Png/bpp1.png";
public const string Gray4Bpp = "Png/gray_4bpp.png"; public const string Gray4Bpp = "Png/gray_4bpp.png";
public const string Gray16Bit = "Png/gray-16.png"; public const string Gray16Bit = "Png/gray-16.png";
public const string GrayAlpha8Bit = "Png/gray-alpha-8.png";
public const string GrayAlpha16Bit = "Png/gray-alpha-16.png"; public const string GrayAlpha16Bit = "Png/gray-alpha-16.png";
public const string GrayTrns16Bit = "Png/gray-16-tRNS.png"; public const string GrayTrns16BitInterlaced = "Png/gray-16-tRNS-interlaced.png";
public const string Rgb24BppTrans = "Png/rgb-8-tRNS.png"; public const string Rgb24BppTrans = "Png/rgb-8-tRNS.png";
public const string Rgb48Bpp = "Png/rgb-48bpp.png"; public const string Rgb48Bpp = "Png/rgb-48bpp.png";
public const string Rgb48BppInterlaced = "Png/rgb-48bpp-interlaced.png"; public const string Rgb48BppInterlaced = "Png/rgb-48bpp-interlaced.png";

2
tests/Images/External

@ -1 +1 @@
Subproject commit 94cc43a65e304aa312bea9d098206086095e6dff Subproject commit 6fcee2ccd5e8bac98a0290b467ad86bb02d00b6c

0
tests/Images/Input/Png/gray-16-tRNS.png → tests/Images/Input/Png/gray-16-tRNS-interlaced.png

3
tests/Images/Input/Png/gray-alpha-8.png

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c0e327f49e2b0deda69811cdf20d36f2ff54f9335e11647755ad4473a6f1408a
size 684
Loading…
Cancel
Save