Browse Source

Fix build

pull/2189/head
James Jackson-South 3 years ago
parent
commit
89faddfa71
  1. 2
      src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.CmykAvx.cs
  2. 2
      src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.GrayScaleAvx.cs
  3. 2
      src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YCbCrAvx.cs
  4. 2
      src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YccKAvx.cs
  5. 40
      src/ImageSharp/Formats/Png/PngDecoderCore.cs
  6. 5
      tests/ImageSharp.Tests/Formats/Jpg/JpegEncoderTests.cs
  7. 2
      tests/ImageSharp.Tests/Formats/Png/PngEncoderTests.cs
  8. 107
      tests/ImageSharp.Tests/TestDataIcc/IccTestDataTagDataEntry.cs
  9. 12
      tests/ImageSharp.Tests/TestUtilities/Tests/TestImageProviderTests.cs

2
src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.CmykAvx.cs

@ -1,7 +1,6 @@
// Copyright (c) Six Labors.
// Licensed under the Six Labors Split License.
#if SUPPORTS_RUNTIME_INTRINSICS
using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
@ -96,4 +95,3 @@ namespace SixLabors.ImageSharp.Formats.Jpeg.Components
}
}
}
#endif

2
src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.GrayScaleAvx.cs

@ -1,7 +1,6 @@
// Copyright (c) Six Labors.
// Licensed under the Six Labors Split License.
#if SUPPORTS_RUNTIME_INTRINSICS
using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
@ -69,4 +68,3 @@ namespace SixLabors.ImageSharp.Formats.Jpeg.Components
}
}
}
#endif

2
src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YCbCrAvx.cs

@ -1,7 +1,6 @@
// Copyright (c) Six Labors.
// Licensed under the Six Labors Split License.
#if SUPPORTS_RUNTIME_INTRINSICS
using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
@ -122,4 +121,3 @@ namespace SixLabors.ImageSharp.Formats.Jpeg.Components
}
}
}
#endif

2
src/ImageSharp/Formats/Jpeg/Components/ColorConverters/JpegColorConverter.YccKAvx.cs

@ -1,7 +1,6 @@
// Copyright (c) Six Labors.
// Licensed under the Six Labors Split License.
#if SUPPORTS_RUNTIME_INTRINSICS
using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
@ -133,4 +132,3 @@ namespace SixLabors.ImageSharp.Formats.Jpeg.Components
}
}
}
#endif

40
src/ImageSharp/Formats/Png/PngDecoderCore.cs

@ -519,26 +519,15 @@ namespace SixLabors.ImageSharp.Formats.Png
/// </summary>
/// <returns>The <see cref="int"/></returns>
private int CalculateBytesPerPixel()
{
switch (this.pngColorType)
=> this.pngColorType
switch
{
case PngColorType.Grayscale:
return this.header.BitDepth == 16 ? 2 : 1;
case PngColorType.GrayscaleWithAlpha:
return this.header.BitDepth == 16 ? 4 : 2;
case PngColorType.Palette:
return 1;
case PngColorType.Rgb:
return this.header.BitDepth == 16 ? 6 : 3;
case PngColorType.RgbWithAlpha:
default:
return this.header.BitDepth == 16 ? 8 : 4;
}
}
PngColorType.Grayscale => this.header.BitDepth == 16 ? 2 : 1,
PngColorType.GrayscaleWithAlpha => this.header.BitDepth == 16 ? 4 : 2,
PngColorType.Palette => 1,
PngColorType.Rgb => this.header.BitDepth == 16 ? 6 : 3,
_ => this.header.BitDepth == 16 ? 8 : 4,
};
/// <summary>
/// Calculates the scanline length.
@ -1229,11 +1218,14 @@ namespace SixLabors.ImageSharp.Formats.Png
{
fixed (byte* compressedDataBase = compressedData)
{
using (IMemoryOwner<byte> destBuffer = this.memoryAllocator.Allocate<byte>(this.configuration.StreamProcessingBufferSize))
using (var memoryStreamOutput = new MemoryStream(compressedData.Length))
using (var memoryStreamInput = new UnmanagedMemoryStream(compressedDataBase, compressedData.Length))
using (var bufferedStream = new BufferedReadStream(this.configuration, memoryStreamInput))
using (var inflateStream = new ZlibInflateStream(bufferedStream))
using IMemoryOwner<byte> destBuffer = this.memoryAllocator.Allocate<byte>(this.configuration.StreamProcessingBufferSize);
using var memoryStreamOutput = new MemoryStream(compressedData.Length);
using var memoryStreamInput = new UnmanagedMemoryStream(compressedDataBase, compressedData.Length);
using var bufferedStream = new BufferedReadStream(this.configuration, memoryStreamInput);
using var inflateStream = new ZlibInflateStream(bufferedStream);
Span<byte> destUncompressedData = destBuffer.GetSpan();
if (!inflateStream.AllocateNewBytes(compressedData.Length, false))
{
uncompressedBytesArray = Array.Empty<byte>();
return false;

5
tests/ImageSharp.Tests/Formats/Jpg/JpegEncoderTests.cs

@ -6,7 +6,6 @@ using System.Threading;
using System.Threading.Tasks;
using SixLabors.ImageSharp.Formats.Jpeg;
using SixLabors.ImageSharp.PixelFormats;
using SixLabors.ImageSharp.Processing;
using SixLabors.ImageSharp.Tests.TestUtilities;
using SixLabors.ImageSharp.Tests.TestUtilities.ImageComparison;
@ -33,7 +32,6 @@ namespace SixLabors.ImageSharp.Tests.Formats.Jpg
{ JpegEncodingColor.Rgb, 100, 0.0238f / 100 },
{ JpegEncodingColor.Rgb, 80, 1.3044f / 100 },
{ JpegEncodingColor.Rgb, 40, 2.9879f / 100 },
{ JpegEncodingColor.YCbCrRatio444, 100, 0.0780f / 100 },
{ JpegEncodingColor.YCbCrRatio444, 80, 1.4585f / 100 },
{ JpegEncodingColor.YCbCrRatio444, 40, 3.1413f / 100 },
@ -44,15 +42,12 @@ namespace SixLabors.ImageSharp.Tests.Formats.Jpg
{ JpegEncodingColor.YCbCrRatio422, 100, 0.4895f / 100 },
{ JpegEncodingColor.YCbCrRatio422, 80, 1.6043f / 100 },
{ JpegEncodingColor.YCbCrRatio422, 40, 3.1996f / 100 },
{ JpegEncodingColor.YCbCrRatio420, 100, 0.5790f / 100 },
{ JpegEncodingColor.YCbCrRatio420, 80, 1.6692f / 100 },
{ JpegEncodingColor.YCbCrRatio420, 40, 3.2324f / 100 },
{ JpegEncodingColor.YCbCrRatio411, 100, 0.6868f / 100 },
{ JpegEncodingColor.YCbCrRatio411, 80, 1.7139f / 100 },
{ JpegEncodingColor.YCbCrRatio411, 40, 3.2634f / 100 },
{ JpegEncodingColor.YCbCrRatio410, 100, 0.7357f / 100 },
{ JpegEncodingColor.YCbCrRatio410, 80, 1.7495f / 100 },
{ JpegEncodingColor.YCbCrRatio410, 40, 3.2911f / 100 },

2
tests/ImageSharp.Tests/Formats/Png/PngEncoderTests.cs

@ -340,7 +340,7 @@ namespace SixLabors.ImageSharp.Tests.Formats.Png
0x0A, // Line ending CRLF
0x1A, // EOF
0x0A // LF
};
};
Assert.Equal(expected, data);
}

107
tests/ImageSharp.Tests/TestDataIcc/IccTestDataTagDataEntry.cs

@ -37,7 +37,8 @@ namespace SixLabors.ImageSharp.Tests
new object[] { TagDataEntryHeader_CurveArr, TagDataEntryHeader_CurveVal },
};
public static readonly IccUnknownTagDataEntry Unknown_Val = new IccUnknownTagDataEntry(new byte[] { 0x00, 0x01, 0x02, 0x03 });
public static readonly IccUnknownTagDataEntry Unknown_Val = new(new byte[] { 0x00, 0x01, 0x02, 0x03 });
public static readonly byte[] Unknown_Arr = { 0x00, 0x01, 0x02, 0x03 };
public static readonly object[][] UnknownTagDataEntryTestData =
@ -45,7 +46,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { Unknown_Arr, Unknown_Val, 12u },
};
public static readonly IccChromaticityTagDataEntry Chromaticity_Val1 = new IccChromaticityTagDataEntry(IccColorantEncoding.ItuRBt709_2);
public static readonly IccChromaticityTagDataEntry Chromaticity_Val1 = new(IccColorantEncoding.ItuRBt709_2);
public static readonly byte[] Chromaticity_Arr1 = ArrayHelper.Concat(
IccTestDataPrimitives.UInt16_3,
IccTestDataPrimitives.UInt16_1,
@ -56,7 +57,7 @@ namespace SixLabors.ImageSharp.Tests
new byte[] { 0x00, 0x00, 0x26, 0x66 }, // 0.150
new byte[] { 0x00, 0x00, 0x0F, 0x5C }); // 0.060
public static readonly IccChromaticityTagDataEntry Chromaticity_Val2 = new IccChromaticityTagDataEntry(
public static readonly IccChromaticityTagDataEntry Chromaticity_Val2 = new(
new double[][]
{
new double[] { 1, 2 },
@ -91,7 +92,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { Chromaticity_Arr2, Chromaticity_Val2 },
};
public static readonly IccColorantOrderTagDataEntry ColorantOrder_Val = new IccColorantOrderTagDataEntry(new byte[] { 0x00, 0x01, 0x02 });
public static readonly IccColorantOrderTagDataEntry ColorantOrder_Val = new(new byte[] { 0x00, 0x01, 0x02 });
public static readonly byte[] ColorantOrder_Arr = ArrayHelper.Concat(IccTestDataPrimitives.UInt32_3, new byte[] { 0x00, 0x01, 0x02 });
public static readonly object[][] ColorantOrderTagDataEntryTestData =
@ -99,7 +100,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { ColorantOrder_Arr, ColorantOrder_Val },
};
public static readonly IccColorantTableTagDataEntry ColorantTable_Val = new IccColorantTableTagDataEntry(
public static readonly IccColorantTableTagDataEntry ColorantTable_Val = new(
new IccColorantTableEntry[]
{
IccTestDataNonPrimitives.ColorantTableEntry_ValRand1,
@ -116,15 +117,15 @@ namespace SixLabors.ImageSharp.Tests
new object[] { ColorantTable_Arr, ColorantTable_Val },
};
public static readonly IccCurveTagDataEntry Curve_Val_0 = new IccCurveTagDataEntry();
public static readonly IccCurveTagDataEntry Curve_Val_0 = new();
public static readonly byte[] Curve_Arr_0 = IccTestDataPrimitives.UInt32_0;
public static readonly IccCurveTagDataEntry Curve_Val_1 = new IccCurveTagDataEntry(1f);
public static readonly IccCurveTagDataEntry Curve_Val_1 = new(1f);
public static readonly byte[] Curve_Arr_1 = ArrayHelper.Concat(
IccTestDataPrimitives.UInt32_1,
IccTestDataPrimitives.UFix8_1);
public static readonly IccCurveTagDataEntry Curve_Val_2 = new IccCurveTagDataEntry(new float[] { 1 / 65535f, 2 / 65535f, 3 / 65535f });
public static readonly IccCurveTagDataEntry Curve_Val_2 = new(new float[] { 1 / 65535f, 2 / 65535f, 3 / 65535f });
public static readonly byte[] Curve_Arr_2 = ArrayHelper.Concat(
IccTestDataPrimitives.UInt32_3,
IccTestDataPrimitives.UInt16_1,
@ -138,7 +139,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { Curve_Arr_2, Curve_Val_2 },
};
public static readonly IccDataTagDataEntry Data_ValNoASCII = new IccDataTagDataEntry(
public static readonly IccDataTagDataEntry Data_ValNoASCII = new(
new byte[] { 0x01, 0x02, 0x03, 0x04 },
false);
@ -148,7 +149,7 @@ namespace SixLabors.ImageSharp.Tests
0x01, 0x02, 0x03, 0x04
};
public static readonly IccDataTagDataEntry Data_ValASCII = new IccDataTagDataEntry(
public static readonly IccDataTagDataEntry Data_ValASCII = new(
new byte[] { (byte)'A', (byte)'S', (byte)'C', (byte)'I', (byte)'I' },
true);
@ -164,7 +165,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { Data_ArrASCII, Data_ValASCII, 17u },
};
public static readonly IccDateTimeTagDataEntry DateTime_Val = new IccDateTimeTagDataEntry(IccTestDataNonPrimitives.DateTime_ValRand1);
public static readonly IccDateTimeTagDataEntry DateTime_Val = new(IccTestDataNonPrimitives.DateTime_ValRand1);
public static readonly byte[] DateTime_Arr = IccTestDataNonPrimitives.DateTime_Rand1;
public static readonly object[][] DateTimeTagDataEntryTestData =
@ -172,7 +173,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { DateTime_Arr, DateTime_Val },
};
public static readonly IccLut16TagDataEntry Lut16_Val = new IccLut16TagDataEntry(
public static readonly IccLut16TagDataEntry Lut16_Val = new(
new IccLut[] { IccTestDataLut.LUT16_ValGrad, IccTestDataLut.LUT16_ValGrad },
IccTestDataLut.CLUT16_ValGrad,
new IccLut[] { IccTestDataLut.LUT16_ValGrad, IccTestDataLut.LUT16_ValGrad, IccTestDataLut.LUT16_ValGrad });
@ -193,7 +194,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { Lut16_Arr, Lut16_Val },
};
public static readonly IccLut8TagDataEntry Lut8_Val = new IccLut8TagDataEntry(
public static readonly IccLut8TagDataEntry Lut8_Val = new(
new IccLut[] { IccTestDataLut.LUT8_ValGrad, IccTestDataLut.LUT8_ValGrad },
IccTestDataLut.CLUT8_ValGrad,
new IccLut[] { IccTestDataLut.LUT8_ValGrad, IccTestDataLut.LUT8_ValGrad, IccTestDataLut.LUT8_ValGrad });
@ -225,18 +226,20 @@ namespace SixLabors.ImageSharp.Tests
TagDataEntryHeader_CurveArr,
Curve_Arr_2);
public static readonly IccLutAToBTagDataEntry LutAToB_Val = new IccLutAToBTagDataEntry(
new IccCurveTagDataEntry[]
public static readonly IccLutAToBTagDataEntry LutAToB_Val
= new(
new IccCurveTagDataEntry[]
{
Curve_Val_0,
Curve_Val_1,
Curve_Val_2,
},
IccTestDataMatrix.Single_2DArray_ValGrad,
IccTestDataMatrix.Single_1DArray_ValGrad,
new IccCurveTagDataEntry[] { Curve_Val_1, Curve_Val_2, Curve_Val_0 },
IccTestDataLut.CLUT_Val16,
new IccCurveTagDataEntry[] { Curve_Val_2, Curve_Val_1 });
IccTestDataMatrix.Single_2DArray_ValGrad,
IccTestDataMatrix.Single_1DArray_ValGrad,
new IccCurveTagDataEntry[] { Curve_Val_1, Curve_Val_2, Curve_Val_0 },
IccTestDataLut.CLUT_Val16,
new IccCurveTagDataEntry[] { Curve_Val_2, Curve_Val_1 });
public static readonly byte[] LutAToB_Arr = ArrayHelper.Concat(
new byte[] { 0x02, 0x03, 0x00, 0x00 },
new byte[] { 0x00, 0x00, 0x00, 0x20 }, // b: 32
@ -273,13 +276,12 @@ namespace SixLabors.ImageSharp.Tests
CurveFull_1, // 14 bytes
new byte[] { 0x00, 0x00 }); // Padding
public static readonly object[][] LutAToBTagDataEntryTestData =
{
new object[] { LutAToB_Arr, LutAToB_Val },
};
public static readonly IccLutBToATagDataEntry LutBToA_Val = new IccLutBToATagDataEntry(
public static readonly IccLutBToATagDataEntry LutBToA_Val = new(
new[]
{
Curve_Val_0,
@ -290,9 +292,9 @@ namespace SixLabors.ImageSharp.Tests
null,
IccTestDataLut.CLUT_Val16,
new[] { Curve_Val_2, Curve_Val_1, Curve_Val_0 });
public static readonly byte[] LutBToA_Arr = ArrayHelper.Concat(
new byte[] { 0x02, 0x03, 0x00, 0x00 },
new byte[] { 0x00, 0x00, 0x00, 0x20 }, // b: 32
new byte[] { 0x00, 0x00, 0x00, 0x00 }, // matrix: 0
new byte[] { 0x00, 0x00, 0x00, 0x00 }, // m: 0
@ -315,13 +317,12 @@ namespace SixLabors.ImageSharp.Tests
new byte[] { 0x00, 0x00 }, // Padding
CurveFull_0); // 12 bytes
public static readonly object[][] LutBToATagDataEntryTestData =
{
new object[] { LutBToA_Arr, LutBToA_Val },
};
public static readonly IccMeasurementTagDataEntry Measurement_Val = new IccMeasurementTagDataEntry(
public static readonly IccMeasurementTagDataEntry Measurement_Val = new(
IccStandardObserver.Cie1931Observer,
IccTestDataNonPrimitives.XyzNumber_ValVar1,
IccMeasurementGeometry.Degree0ToDOrDTo0,
@ -346,7 +347,7 @@ namespace SixLabors.ImageSharp.Tests
private static readonly IccLocalizedString LocalizedString_Rand2_esXL = CreateLocalizedString("es", "XL", IccTestDataPrimitives.Unicode_ValRand2);
private static readonly IccLocalizedString LocalizedString_Rand2_xyXL = CreateLocalizedString("xy", "XL", IccTestDataPrimitives.Unicode_ValRand2);
private static readonly IccLocalizedString LocalizedString_Rand_en = CreateLocalizedString("en", null, IccTestDataPrimitives.Unicode_ValRand2);
private static readonly IccLocalizedString LocalizedString_Rand_Invariant = new IccLocalizedString(CultureInfo.InvariantCulture, IccTestDataPrimitives.Unicode_ValRand3);
private static readonly IccLocalizedString LocalizedString_Rand_Invariant = new(CultureInfo.InvariantCulture, IccTestDataPrimitives.Unicode_ValRand3);
private static IccLocalizedString CreateLocalizedString(string language, string country, string text)
{
@ -397,7 +398,7 @@ namespace SixLabors.ImageSharp.Tests
LocalizedString_Rand2_xyXL,
};
public static readonly IccMultiLocalizedUnicodeTagDataEntry MultiLocalizedUnicode_Val = new IccMultiLocalizedUnicodeTagDataEntry(LocalizedString_RandArr_enUS_deDE);
public static readonly IccMultiLocalizedUnicodeTagDataEntry MultiLocalizedUnicode_Val = new(LocalizedString_RandArr_enUS_deDE);
public static readonly byte[] MultiLocalizedUnicode_Arr = ArrayHelper.Concat(
IccTestDataPrimitives.UInt32_2,
new byte[] { 0x00, 0x00, 0x00, 0x0C }, // 12
@ -410,7 +411,7 @@ namespace SixLabors.ImageSharp.Tests
IccTestDataPrimitives.Unicode_Rand2,
IccTestDataPrimitives.Unicode_Rand3);
public static readonly IccMultiLocalizedUnicodeTagDataEntry MultiLocalizedUnicode_Val2 = new IccMultiLocalizedUnicodeTagDataEntry(LocalizedString_RandArr_en_Invariant);
public static readonly IccMultiLocalizedUnicodeTagDataEntry MultiLocalizedUnicode_Val2 = new(LocalizedString_RandArr_en_Invariant);
public static readonly byte[] MultiLocalizedUnicode_Arr2_Read = ArrayHelper.Concat(
IccTestDataPrimitives.UInt32_2,
new byte[] { 0x00, 0x00, 0x00, 0x0C }, // 12
@ -435,7 +436,7 @@ namespace SixLabors.ImageSharp.Tests
IccTestDataPrimitives.Unicode_Rand2,
IccTestDataPrimitives.Unicode_Rand3);
public static readonly IccMultiLocalizedUnicodeTagDataEntry MultiLocalizedUnicode_Val3 = new IccMultiLocalizedUnicodeTagDataEntry(LocalizedString_SameArr_enUS_deDE_esXL_xyXL);
public static readonly IccMultiLocalizedUnicodeTagDataEntry MultiLocalizedUnicode_Val3 = new(LocalizedString_SameArr_enUS_deDE_esXL_xyXL);
public static readonly byte[] MultiLocalizedUnicode_Arr3 = ArrayHelper.Concat(
IccTestDataPrimitives.UInt32_4,
new byte[] { 0x00, 0x00, 0x00, 0x0C }, // 12
@ -467,7 +468,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { MultiLocalizedUnicode_Arr3, MultiLocalizedUnicode_Val3 },
};
public static readonly IccMultiProcessElementsTagDataEntry MultiProcessElements_Val = new IccMultiProcessElementsTagDataEntry(
public static readonly IccMultiProcessElementsTagDataEntry MultiProcessElements_Val = new(
new IccMultiProcessElement[]
{
IccTestDataMultiProcessElements.MPE_ValCLUT,
@ -490,11 +491,11 @@ namespace SixLabors.ImageSharp.Tests
new object[] { MultiProcessElements_Arr, MultiProcessElements_Val },
};
public static readonly IccNamedColor2TagDataEntry NamedColor2_Val = new IccNamedColor2TagDataEntry(
public static readonly IccNamedColor2TagDataEntry NamedColor2_Val = new(
16909060,
ArrayHelper.Fill('A', 31),
ArrayHelper.Fill('4', 31),
new IccNamedColor[] { IccTestDataNonPrimitives.NamedColor_ValMin, IccTestDataNonPrimitives.NamedColor_ValMin });
new IccNamedColor[] { IccTestDataNonPrimitives.NamedColor_ValMin, IccTestDataNonPrimitives.NamedColor_ValMin });
public static readonly byte[] NamedColor2_Arr = ArrayHelper.Concat(
new byte[] { 0x01, 0x02, 0x03, 0x04 },
@ -512,7 +513,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { NamedColor2_Arr, NamedColor2_Val },
};
public static readonly IccParametricCurveTagDataEntry ParametricCurve_Val = new IccParametricCurveTagDataEntry(IccTestDataCurves.Parametric_ValVar1);
public static readonly IccParametricCurveTagDataEntry ParametricCurve_Val = new(IccTestDataCurves.Parametric_ValVar1);
public static readonly byte[] ParametricCurve_Arr = IccTestDataCurves.Parametric_Var1;
public static readonly object[][] ParametricCurveTagDataEntryTestData =
@ -520,7 +521,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { ParametricCurve_Arr, ParametricCurve_Val },
};
public static readonly IccProfileSequenceDescTagDataEntry ProfileSequenceDesc_Val = new IccProfileSequenceDescTagDataEntry(
public static readonly IccProfileSequenceDescTagDataEntry ProfileSequenceDesc_Val = new(
new IccProfileDescription[]
{
IccTestDataNonPrimitives.ProfileDescription_ValRand1,
@ -537,7 +538,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { ProfileSequenceDesc_Arr, ProfileSequenceDesc_Val },
};
public static readonly IccProfileSequenceIdentifierTagDataEntry ProfileSequenceIdentifier_Val = new IccProfileSequenceIdentifierTagDataEntry(
public static readonly IccProfileSequenceIdentifierTagDataEntry ProfileSequenceIdentifier_Val = new(
new IccProfileSequenceIdentifier[]
{
new IccProfileSequenceIdentifier(IccTestDataNonPrimitives.ProfileId_ValRand, LocalizedString_RandArr_enUS_deDE),
@ -564,7 +565,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { ProfileSequenceIdentifier_Arr, ProfileSequenceIdentifier_Val },
};
public static readonly IccResponseCurveSet16TagDataEntry ResponseCurveSet16_Val = new IccResponseCurveSet16TagDataEntry(
public static readonly IccResponseCurveSet16TagDataEntry ResponseCurveSet16_Val = new(
new IccResponseCurve[]
{
IccTestDataCurves.Response_ValGrad,
@ -584,7 +585,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { ResponseCurveSet16_Arr, ResponseCurveSet16_Val },
};
public static readonly IccFix16ArrayTagDataEntry Fix16Array_Val = new IccFix16ArrayTagDataEntry(new float[] { 1 / 256f, 2 / 256f, 3 / 256f });
public static readonly IccFix16ArrayTagDataEntry Fix16Array_Val = new(new float[] { 1 / 256f, 2 / 256f, 3 / 256f });
public static readonly byte[] Fix16Array_Arr = ArrayHelper.Concat(
IccTestDataPrimitives.Fix16_1,
IccTestDataPrimitives.Fix16_2,
@ -595,7 +596,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { Fix16Array_Arr, Fix16Array_Val, 20u },
};
public static readonly IccSignatureTagDataEntry Signature_Val = new IccSignatureTagDataEntry("ABCD");
public static readonly IccSignatureTagDataEntry Signature_Val = new("ABCD");
public static readonly byte[] Signature_Arr = { 0x41, 0x42, 0x43, 0x44, };
public static readonly object[][] SignatureTagDataEntryTestData =
@ -603,7 +604,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { Signature_Arr, Signature_Val },
};
public static readonly IccTextTagDataEntry Text_Val = new IccTextTagDataEntry("ABCD");
public static readonly IccTextTagDataEntry Text_Val = new("ABCD");
public static readonly byte[] Text_Arr = { 0x41, 0x42, 0x43, 0x44 };
public static readonly object[][] TextTagDataEntryTestData =
@ -611,7 +612,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { Text_Arr, Text_Val, 12u },
};
public static readonly IccUFix16ArrayTagDataEntry UFix16Array_Val = new IccUFix16ArrayTagDataEntry(new float[] { 1, 2, 3 });
public static readonly IccUFix16ArrayTagDataEntry UFix16Array_Val = new(new float[] { 1, 2, 3 });
public static readonly byte[] UFix16Array_Arr = ArrayHelper.Concat(
IccTestDataPrimitives.UFix16_1,
IccTestDataPrimitives.UFix16_2,
@ -622,7 +623,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { UFix16Array_Arr, UFix16Array_Val, 20u },
};
public static readonly IccUInt16ArrayTagDataEntry UInt16Array_Val = new IccUInt16ArrayTagDataEntry(new ushort[] { 1, 2, 3 });
public static readonly IccUInt16ArrayTagDataEntry UInt16Array_Val = new(new ushort[] { 1, 2, 3 });
public static readonly byte[] UInt16Array_Arr = ArrayHelper.Concat(
IccTestDataPrimitives.UInt16_1,
IccTestDataPrimitives.UInt16_2,
@ -633,7 +634,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { UInt16Array_Arr, UInt16Array_Val, 14u },
};
public static readonly IccUInt32ArrayTagDataEntry UInt32Array_Val = new IccUInt32ArrayTagDataEntry(new uint[] { 1, 2, 3 });
public static readonly IccUInt32ArrayTagDataEntry UInt32Array_Val = new(new uint[] { 1, 2, 3 });
public static readonly byte[] UInt32Array_Arr = ArrayHelper.Concat(
IccTestDataPrimitives.UInt32_1,
IccTestDataPrimitives.UInt32_2,
@ -644,7 +645,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { UInt32Array_Arr, UInt32Array_Val, 20u },
};
public static readonly IccUInt64ArrayTagDataEntry UInt64Array_Val = new IccUInt64ArrayTagDataEntry(new ulong[] { 1, 2, 3 });
public static readonly IccUInt64ArrayTagDataEntry UInt64Array_Val = new(new ulong[] { 1, 2, 3 });
public static readonly byte[] UInt64Array_Arr = ArrayHelper.Concat(
IccTestDataPrimitives.UInt64_1,
IccTestDataPrimitives.UInt64_2,
@ -655,7 +656,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { UInt64Array_Arr, UInt64Array_Val, 32u },
};
public static readonly IccUInt8ArrayTagDataEntry UInt8Array_Val = new IccUInt8ArrayTagDataEntry(new byte[] { 1, 2, 3 });
public static readonly IccUInt8ArrayTagDataEntry UInt8Array_Val = new(new byte[] { 1, 2, 3 });
public static readonly byte[] UInt8Array_Arr = { 1, 2, 3 };
public static readonly object[][] UInt8ArrayTagDataEntryTestData =
@ -663,7 +664,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { UInt8Array_Arr, UInt8Array_Val, 11u },
};
public static readonly IccViewingConditionsTagDataEntry ViewingConditions_Val = new IccViewingConditionsTagDataEntry(
public static readonly IccViewingConditionsTagDataEntry ViewingConditions_Val = new(
IccTestDataNonPrimitives.XyzNumber_ValVar1,
IccTestDataNonPrimitives.XyzNumber_ValVar2,
IccStandardIlluminant.D50);
@ -678,7 +679,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { ViewingConditions_Arr, ViewingConditions_Val },
};
public static readonly IccXyzTagDataEntry XYZ_Val = new IccXyzTagDataEntry(new Vector3[]
public static readonly IccXyzTagDataEntry XYZ_Val = new(new Vector3[]
{
IccTestDataNonPrimitives.XyzNumber_ValVar1,
IccTestDataNonPrimitives.XyzNumber_ValVar2,
@ -695,7 +696,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { XYZ_Arr, XYZ_Val, 44u },
};
public static readonly IccTextDescriptionTagDataEntry TextDescription_Val1 = new IccTextDescriptionTagDataEntry(
public static readonly IccTextDescriptionTagDataEntry TextDescription_Val1 = new(
IccTestDataPrimitives.Ascii_ValRand,
IccTestDataPrimitives.Unicode_ValRand1,
ArrayHelper.Fill('A', 66),
@ -714,7 +715,7 @@ namespace SixLabors.ImageSharp.Tests
ArrayHelper.Fill((byte)0x41, 66),
new byte[] { 0x00 }); // Null terminator
public static readonly IccTextDescriptionTagDataEntry TextDescription_Val2 = new IccTextDescriptionTagDataEntry(IccTestDataPrimitives.Ascii_ValRand, null, null, 0, 0);
public static readonly IccTextDescriptionTagDataEntry TextDescription_Val2 = new(IccTestDataPrimitives.Ascii_ValRand, null, null, 0, 0);
public static readonly byte[] TextDescription_Arr2 = ArrayHelper.Concat(
new byte[] { 0x00, 0x00, 0x00, 0x0B }, // 11
IccTestDataPrimitives.Ascii_Rand,
@ -730,7 +731,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { TextDescription_Arr2, TextDescription_Val2 },
};
public static readonly IccCrdInfoTagDataEntry CrdInfo_Val = new IccCrdInfoTagDataEntry(
public static readonly IccCrdInfoTagDataEntry CrdInfo_Val = new(
IccTestDataPrimitives.Ascii_ValRand4,
IccTestDataPrimitives.Ascii_ValRand1,
IccTestDataPrimitives.Ascii_ValRand2,
@ -759,7 +760,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { CrdInfo_Arr, CrdInfo_Val },
};
public static readonly IccScreeningTagDataEntry Screening_Val = new IccScreeningTagDataEntry(
public static readonly IccScreeningTagDataEntry Screening_Val = new(
IccScreeningFlag.DefaultScreens | IccScreeningFlag.UnitLinesPerCm,
new IccScreeningChannel[] { IccTestDataNonPrimitives.ScreeningChannel_ValRand1, IccTestDataNonPrimitives.ScreeningChannel_ValRand2 });
@ -774,7 +775,7 @@ namespace SixLabors.ImageSharp.Tests
new object[] { Screening_Arr, Screening_Val },
};
public static readonly IccUcrBgTagDataEntry UcrBg_Val = new IccUcrBgTagDataEntry(
public static readonly IccUcrBgTagDataEntry UcrBg_Val = new(
new ushort[] { 3, 4, 6 },
new ushort[] { 9, 7, 2, 5 },
IccTestDataPrimitives.Ascii_ValRand);
@ -809,12 +810,12 @@ namespace SixLabors.ImageSharp.Tests
MultiLocalizedUnicode_Arr,
new byte[] { 0x00, 0x00 }); // padding
public static readonly IccTagTableEntry TagDataEntry_MultiLocalizedUnicodeTable = new IccTagTableEntry(
public static readonly IccTagTableEntry TagDataEntry_MultiLocalizedUnicodeTable = new(
IccProfileTag.Unknown,
0,
(uint)TagDataEntry_MultiLocalizedUnicodeArr.Length - 2);
public static readonly IccTagTableEntry TagDataEntry_CurveTable = new IccTagTableEntry(IccProfileTag.Unknown, 0, (uint)TagDataEntry_CurveArr.Length - 2);
public static readonly IccTagTableEntry TagDataEntry_CurveTable = new(IccProfileTag.Unknown, 0, (uint)TagDataEntry_CurveArr.Length - 2);
public static readonly object[][] TagDataEntryTestData =
{

12
tests/ImageSharp.Tests/TestUtilities/Tests/TestImageProviderTests.cs

@ -369,14 +369,14 @@ namespace SixLabors.ImageSharp.Tests
}
public IImageInfo Identify(DecoderOptions options, Stream stream, CancellationToken cancellationToken)
=> this.Decode<Rgba32>((TestDecoderOptions)(new() { GeneralOptions = options }), stream, cancellationToken);
=> this.Decode<Rgba32>((TestDecoderOptions)new() { GeneralOptions = options }, stream, cancellationToken);
public Image<TPixel> Decode<TPixel>(DecoderOptions options, Stream stream, CancellationToken cancellationToken)
where TPixel : unmanaged, IPixel<TPixel>
=> this.Decode<TPixel>((TestDecoderOptions)(new() { GeneralOptions = options }), stream, cancellationToken);
=> this.Decode<TPixel>((TestDecoderOptions)new() { GeneralOptions = options }, stream, cancellationToken);
public Image Decode(DecoderOptions options, Stream stream, CancellationToken cancellationToken)
=> this.Decode((TestDecoderOptions)(new() { GeneralOptions = options }), stream, cancellationToken);
=> this.Decode((TestDecoderOptions)new() { GeneralOptions = options }, stream, cancellationToken);
public Image<TPixel> Decode<TPixel>(TestDecoderOptions options, Stream stream, CancellationToken cancellationToken)
where TPixel : unmanaged, IPixel<TPixel>
@ -414,14 +414,14 @@ namespace SixLabors.ImageSharp.Tests
}
public IImageInfo Identify(DecoderOptions options, Stream stream, CancellationToken cancellationToken)
=> this.Decode<Rgba32>((TestDecoderWithParametersOptions)(new() { GeneralOptions = options }), stream, cancellationToken);
=> this.Decode<Rgba32>((TestDecoderWithParametersOptions)new() { GeneralOptions = options }, stream, cancellationToken);
public Image<TPixel> Decode<TPixel>(DecoderOptions options, Stream stream, CancellationToken cancellationToken)
where TPixel : unmanaged, IPixel<TPixel>
=> this.Decode<TPixel>((TestDecoderWithParametersOptions)(new() { GeneralOptions = options }), stream, cancellationToken);
=> this.Decode<TPixel>((TestDecoderWithParametersOptions)new() { GeneralOptions = options }, stream, cancellationToken);
public Image Decode(DecoderOptions options, Stream stream, CancellationToken cancellationToken)
=> this.Decode((TestDecoderWithParametersOptions)(new() { GeneralOptions = options }), stream, cancellationToken);
=> this.Decode((TestDecoderWithParametersOptions)new() { GeneralOptions = options }, stream, cancellationToken);
public Image<TPixel> Decode<TPixel>(TestDecoderWithParametersOptions options, Stream stream, CancellationToken cancellationToken)
where TPixel : unmanaged, IPixel<TPixel>

Loading…
Cancel
Save