|
|
|
@ -9,6 +9,36 @@ namespace SixLabors.ImageSharp.Tests.PixelFormats |
|
|
|
{ |
|
|
|
public class Byte4Tests |
|
|
|
{ |
|
|
|
/// <summary>
|
|
|
|
/// Tests the equality operators for equality.
|
|
|
|
/// </summary>
|
|
|
|
[Fact] |
|
|
|
public void AreEqual() |
|
|
|
{ |
|
|
|
var color1 = new Byte4(0.0f, 0.0f, 0.0f, 0.0f); |
|
|
|
var color2 = new Byte4(new Vector4(0.0f)); |
|
|
|
var color3 = new Byte4(new Vector4(1.0f, 0.0f, 1.0f, 1.0f)); |
|
|
|
var color4 = new Byte4(1.0f, 0.0f, 1.0f, 1.0f); |
|
|
|
|
|
|
|
Assert.Equal(color1, color2); |
|
|
|
Assert.Equal(color3, color4); |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Tests the equality operators for inequality.
|
|
|
|
/// </summary>
|
|
|
|
[Fact] |
|
|
|
public void AreNotEqual() |
|
|
|
{ |
|
|
|
var color1 = new Byte4(0.0f, 0.0f, 0.0f, 0.0f); |
|
|
|
var color2 = new Byte4(new Vector4(1.0f)); |
|
|
|
var color3 = new Byte4(new Vector4(1.0f, 0.0f, 0.0f, 1.0f)); |
|
|
|
var color4 = new Byte4(1.0f, 1.0f, 0.0f, 1.0f); |
|
|
|
|
|
|
|
Assert.NotEqual(color1, color2); |
|
|
|
Assert.NotEqual(color3, color4); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public void Byte4_PackedValue() |
|
|
|
{ |
|
|
|
@ -45,6 +75,20 @@ namespace SixLabors.ImageSharp.Tests.PixelFormats |
|
|
|
Assert.Equal(1, actual.W); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public void Byte4_ToRgba32() |
|
|
|
{ |
|
|
|
// arrange
|
|
|
|
var byte4 = new Byte4(byte.MaxValue, byte.MaxValue, byte.MaxValue, byte.MaxValue); |
|
|
|
var expected = new Rgba32(Vector4.One); |
|
|
|
var actual = default(Rgba32); |
|
|
|
|
|
|
|
// act
|
|
|
|
byte4.ToRgba32(ref actual); |
|
|
|
|
|
|
|
Assert.Equal(expected, actual); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public void Byte4_FromScaledVector4() |
|
|
|
{ |
|
|
|
@ -61,18 +105,130 @@ namespace SixLabors.ImageSharp.Tests.PixelFormats |
|
|
|
Assert.Equal(expected, actual); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public void Byte4_FromArgb32() |
|
|
|
{ |
|
|
|
// arrange
|
|
|
|
var byte4 = default(Byte4); |
|
|
|
uint expectedPackedValue = uint.MaxValue; |
|
|
|
|
|
|
|
// act
|
|
|
|
byte4.FromArgb32(new Argb32(255, 255, 255, 255)); |
|
|
|
|
|
|
|
// assert
|
|
|
|
Assert.Equal(expectedPackedValue, byte4.PackedValue); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public void Byte4_FromBgr24() |
|
|
|
{ |
|
|
|
// arrange
|
|
|
|
var byte4 = default(Byte4); |
|
|
|
uint expectedPackedValue = uint.MaxValue; |
|
|
|
|
|
|
|
// act
|
|
|
|
byte4.FromBgr24(new Bgr24(byte.MaxValue, byte.MaxValue, byte.MaxValue)); |
|
|
|
|
|
|
|
// assert
|
|
|
|
Assert.Equal(expectedPackedValue, byte4.PackedValue); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public void Byte4_FromGrey8() |
|
|
|
{ |
|
|
|
// arrange
|
|
|
|
var byte4 = default(Byte4); |
|
|
|
uint expectedPackedValue = uint.MaxValue; |
|
|
|
|
|
|
|
// act
|
|
|
|
byte4.FromGray8(new Gray8(byte.MaxValue)); |
|
|
|
|
|
|
|
// assert
|
|
|
|
Assert.Equal(expectedPackedValue, byte4.PackedValue); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public void Byte4_FromGrey16() |
|
|
|
{ |
|
|
|
// arrange
|
|
|
|
var byte4 = default(Byte4); |
|
|
|
uint expectedPackedValue = uint.MaxValue; |
|
|
|
|
|
|
|
// act
|
|
|
|
byte4.FromGray16(new Gray16(ushort.MaxValue)); |
|
|
|
|
|
|
|
// assert
|
|
|
|
Assert.Equal(expectedPackedValue, byte4.PackedValue); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public void Byte4_FromRgb24() |
|
|
|
{ |
|
|
|
// arrange
|
|
|
|
var byte4 = default(Byte4); |
|
|
|
uint expectedPackedValue = uint.MaxValue; |
|
|
|
|
|
|
|
// act
|
|
|
|
byte4.FromRgb24(new Rgb24(byte.MaxValue, byte.MaxValue, byte.MaxValue)); |
|
|
|
|
|
|
|
// assert
|
|
|
|
Assert.Equal(expectedPackedValue, byte4.PackedValue); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public void Byte4_FromBgra5551() |
|
|
|
{ |
|
|
|
// arrange
|
|
|
|
var rgb = default(Byte4); |
|
|
|
var byte4 = default(Byte4); |
|
|
|
uint expected = 0xFFFFFFFF; |
|
|
|
|
|
|
|
// act
|
|
|
|
rgb.FromBgra5551(new Bgra5551(1.0f, 1.0f, 1.0f, 1.0f)); |
|
|
|
byte4.FromBgra5551(new Bgra5551(1.0f, 1.0f, 1.0f, 1.0f)); |
|
|
|
|
|
|
|
// assert
|
|
|
|
Assert.Equal(expected, byte4.PackedValue); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public void Byte4_FromRgba32() |
|
|
|
{ |
|
|
|
// arrange
|
|
|
|
var byte4 = default(Byte4); |
|
|
|
uint expectedPackedValue1 = uint.MaxValue; |
|
|
|
|
|
|
|
// act
|
|
|
|
byte4.FromRgba32(new Rgba32(255, 255, 255, 255)); |
|
|
|
|
|
|
|
// assert
|
|
|
|
Assert.Equal(expectedPackedValue1, byte4.PackedValue); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public void Byte4_FromRgb48() |
|
|
|
{ |
|
|
|
// arrange
|
|
|
|
var byte4 = default(Byte4); |
|
|
|
uint expectedPackedValue = uint.MaxValue; |
|
|
|
|
|
|
|
// act
|
|
|
|
byte4.FromRgb48(new Rgb48(ushort.MaxValue, ushort.MaxValue, ushort.MaxValue)); |
|
|
|
|
|
|
|
// assert
|
|
|
|
Assert.Equal(expectedPackedValue, byte4.PackedValue); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
public void Byte4_FromRgba64() |
|
|
|
{ |
|
|
|
// arrange
|
|
|
|
var byte4 = default(Byte4); |
|
|
|
uint expectedPackedValue = uint.MaxValue; |
|
|
|
|
|
|
|
// act
|
|
|
|
byte4.FromRgba64(new Rgba64(ushort.MaxValue, ushort.MaxValue, ushort.MaxValue, ushort.MaxValue)); |
|
|
|
|
|
|
|
// assert
|
|
|
|
Assert.Equal(expected, rgb.PackedValue); |
|
|
|
Assert.Equal(expectedPackedValue, byte4.PackedValue); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
|