Browse Source

Add test for GetConverter with ycbcr color space which uses FeatureTestRunner to disable specific hw features

pull/2416/head
Brian Popow 3 years ago
parent
commit
ecb6c0f823
  1. 29
      tests/ImageSharp.Tests/Formats/Jpg/JpegColorConverterTests.cs

29
tests/ImageSharp.Tests/Formats/Jpg/JpegColorConverterTests.cs

@ -137,6 +137,35 @@ public class JpegColorConverterTests
}
}
[Fact]
public void GetConverterReturnsCorrectConverterWithYCbCrColorSpace()
{
FeatureTestRunner.RunWithHwIntrinsicsFeature(
RunTest,
HwIntrinsics.AllowAll | HwIntrinsics.DisableAVX2 | HwIntrinsics.DisableSSE2 | HwIntrinsics.DisableHWIntrinsic);
static void RunTest(string arg)
{
// arrange
Type expectedType = typeof(JpegColorConverterBase.YCbCrScalar);
if (Avx.IsSupported)
{
expectedType = typeof(JpegColorConverterBase.YCbCrAvx);
}
else if (Sse2.IsSupported)
{
expectedType = typeof(JpegColorConverterBase.YCbCrVector);
}
// act
JpegColorConverterBase converter = JpegColorConverterBase.GetConverter(JpegColorSpace.YCbCr, 8);
Type actualType = converter.GetType();
// assert
Assert.Equal(expectedType, actualType);
}
}
[Theory]
[InlineData(JpegColorSpace.Grayscale, 1)]
[InlineData(JpegColorSpace.Ycck, 4)]

Loading…
Cancel
Save