mirror of https://github.com/SixLabors/ImageSharp
29 changed files with 594 additions and 244 deletions
@ -0,0 +1,43 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Tests the <see cref="CieLab"/> struct.
|
|||
/// </summary>
|
|||
public class CieLabTests |
|||
{ |
|||
[Fact] |
|||
public void CieLabConstructorAssignsFields() |
|||
{ |
|||
const float l = 75F; |
|||
const float a = -64F; |
|||
const float b = 87F; |
|||
var cieLab = new CieLab(l, a, b); |
|||
|
|||
Assert.Equal(l, cieLab.L); |
|||
Assert.Equal(a, cieLab.A); |
|||
Assert.Equal(b, cieLab.B); |
|||
} |
|||
|
|||
[Fact] |
|||
public void CieLabEquality() |
|||
{ |
|||
var x = default(CieLab); |
|||
var y = new CieLab(Vector3.One); |
|||
|
|||
Assert.True(default(CieLab) == default(CieLab)); |
|||
Assert.True(default(CieLab) != new CieLab(1, 0, 1)); |
|||
Assert.False(default(CieLab) == new CieLab(1, 0, 1)); |
|||
Assert.Equal(default(CieLab), default(CieLab)); |
|||
Assert.Equal(new CieLab(1, 0, 1), new CieLab(1, 0, 1)); |
|||
Assert.Equal(new CieLab(Vector3.One), new CieLab(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,39 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Tests the <see cref="CieLch"/> struct.
|
|||
/// </summary>
|
|||
public class CieLchTests |
|||
{ |
|||
[Fact] |
|||
public void CieLchConstructorAssignsFields() |
|||
{ |
|||
const float l = 75F; |
|||
const float c = 64F; |
|||
const float h = 287F; |
|||
var cieLch = new CieLch(l, c, h); |
|||
|
|||
Assert.Equal(l, cieLch.L); |
|||
Assert.Equal(c, cieLch.C); |
|||
Assert.Equal(h, cieLch.H); |
|||
} |
|||
|
|||
[Fact] |
|||
public void CieLchEquality() |
|||
{ |
|||
var x = default(CieLch); |
|||
var y = new CieLch(Vector3.One); |
|||
Assert.Equal(default(CieLch), default(CieLch)); |
|||
Assert.Equal(new CieLch(1, 0, 1), new CieLch(1, 0, 1)); |
|||
Assert.Equal(new CieLch(Vector3.One), new CieLch(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,39 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Tests the <see cref="CieLchuv"/> struct.
|
|||
/// </summary>
|
|||
public class CieLchuvTests |
|||
{ |
|||
[Fact] |
|||
public void CieLchuvConstructorAssignsFields() |
|||
{ |
|||
const float l = 75F; |
|||
const float c = 64F; |
|||
const float h = 287F; |
|||
var cieLchuv = new CieLchuv(l, c, h); |
|||
|
|||
Assert.Equal(l, cieLchuv.L); |
|||
Assert.Equal(c, cieLchuv.C); |
|||
Assert.Equal(h, cieLchuv.H); |
|||
} |
|||
|
|||
[Fact] |
|||
public void CieLchuvEquality() |
|||
{ |
|||
var x = default(CieLchuv); |
|||
var y = new CieLchuv(Vector3.One); |
|||
Assert.Equal(default(CieLchuv), default(CieLchuv)); |
|||
Assert.Equal(new CieLchuv(1, 0, 1), new CieLchuv(1, 0, 1)); |
|||
Assert.Equal(new CieLchuv(Vector3.One), new CieLchuv(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,39 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Tests the <see cref="CieLuv"/> struct.
|
|||
/// </summary>
|
|||
public class CieLuvTests |
|||
{ |
|||
[Fact] |
|||
public void CieLuvConstructorAssignsFields() |
|||
{ |
|||
const float l = 75F; |
|||
const float c = -64F; |
|||
const float h = 87F; |
|||
var cieLuv = new CieLuv(l, c, h); |
|||
|
|||
Assert.Equal(l, cieLuv.L); |
|||
Assert.Equal(c, cieLuv.U); |
|||
Assert.Equal(h, cieLuv.V); |
|||
} |
|||
|
|||
[Fact] |
|||
public void CieLuvEquality() |
|||
{ |
|||
var x = default(CieLuv); |
|||
var y = new CieLuv(Vector3.One); |
|||
Assert.Equal(default(CieLuv), default(CieLuv)); |
|||
Assert.Equal(new CieLuv(1, 0, 1), new CieLuv(1, 0, 1)); |
|||
Assert.Equal(new CieLuv(Vector3.One), new CieLuv(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,39 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Tests the <see cref="CieXyy"/> struct.
|
|||
/// </summary>
|
|||
public class CieXyyTests |
|||
{ |
|||
[Fact] |
|||
public void CieXyyConstructorAssignsFields() |
|||
{ |
|||
const float x = 75F; |
|||
const float y = 64F; |
|||
const float yl = 287F; |
|||
var cieXyy = new CieXyy(x, y, yl); |
|||
|
|||
Assert.Equal(x, cieXyy.X); |
|||
Assert.Equal(y, cieXyy.Y); |
|||
Assert.Equal(y, cieXyy.Y); |
|||
} |
|||
|
|||
[Fact] |
|||
public void CieXyyEquality() |
|||
{ |
|||
var x = default(CieXyy); |
|||
var y = new CieXyy(Vector3.One); |
|||
Assert.Equal(default(CieXyy), default(CieXyy)); |
|||
Assert.Equal(new CieXyy(1, 0, 1), new CieXyy(1, 0, 1)); |
|||
Assert.Equal(new CieXyy(Vector3.One), new CieXyy(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,39 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Tests the <see cref="CieXyz"/> struct.
|
|||
/// </summary>
|
|||
public class CieXyzTests |
|||
{ |
|||
[Fact] |
|||
public void CieXyzConstructorAssignsFields() |
|||
{ |
|||
const float x = 75F; |
|||
const float y = 64F; |
|||
const float z = 287F; |
|||
var cieXyz = new CieXyz(x, y, z); |
|||
|
|||
Assert.Equal(x, cieXyz.X); |
|||
Assert.Equal(y, cieXyz.Y); |
|||
Assert.Equal(z, cieXyz.Z); |
|||
} |
|||
|
|||
[Fact] |
|||
public void CieXyzEquality() |
|||
{ |
|||
var x = default(CieXyz); |
|||
var y = new CieXyz(Vector3.One); |
|||
Assert.Equal(default(CieXyz), default(CieXyz)); |
|||
Assert.Equal(new CieXyz(1, 0, 1), new CieXyz(1, 0, 1)); |
|||
Assert.Equal(new CieXyz(Vector3.One), new CieXyz(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,41 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Tests the <see cref="Cmyk"/> struct.
|
|||
/// </summary>
|
|||
public class CmykTests |
|||
{ |
|||
[Fact] |
|||
public void CmykConstructorAssignsFields() |
|||
{ |
|||
const float c = .75F; |
|||
const float m = .64F; |
|||
const float y = .87F; |
|||
const float k = .334F; |
|||
var cmyk = new Cmyk(c, m, y, k); |
|||
|
|||
Assert.Equal(c, cmyk.C); |
|||
Assert.Equal(m, cmyk.M); |
|||
Assert.Equal(y, cmyk.Y); |
|||
Assert.Equal(k, cmyk.K); |
|||
} |
|||
|
|||
[Fact] |
|||
public void CmykEquality() |
|||
{ |
|||
var x = default(Cmyk); |
|||
var y = new Cmyk(Vector4.One); |
|||
Assert.Equal(default(Cmyk), default(Cmyk)); |
|||
Assert.Equal(new Cmyk(1, 0, 1, 0), new Cmyk(1, 0, 1, 0)); |
|||
Assert.Equal(new Cmyk(Vector4.One), new Cmyk(Vector4.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
@ -1,162 +0,0 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Test implementations of IEquatable and IAlmostEquatable in our colorspaces
|
|||
/// </summary>
|
|||
public class ColorSpaceEqualityTests |
|||
{ |
|||
[Fact] |
|||
public void CieLabEquality() |
|||
{ |
|||
var x = default(CieLab); |
|||
var y = new CieLab(Vector3.One); |
|||
|
|||
Assert.True(default(CieLab) == default(CieLab)); |
|||
Assert.True(default(CieLab) != new CieLab(1, 0, 1)); |
|||
Assert.False(default(CieLab) == new CieLab(1, 0, 1)); |
|||
Assert.Equal(default(CieLab), default(CieLab)); |
|||
Assert.Equal(new CieLab(1, 0, 1), new CieLab(1, 0, 1)); |
|||
Assert.Equal(new CieLab(Vector3.One), new CieLab(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
|
|||
[Fact] |
|||
public void CieLchEquality() |
|||
{ |
|||
var x = default(CieLch); |
|||
var y = new CieLch(Vector3.One); |
|||
Assert.Equal(default(CieLch), default(CieLch)); |
|||
Assert.Equal(new CieLch(1, 0, 1), new CieLch(1, 0, 1)); |
|||
Assert.Equal(new CieLch(Vector3.One), new CieLch(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
|
|||
[Fact] |
|||
public void CieLchuvEquality() |
|||
{ |
|||
var x = default(CieLchuv); |
|||
var y = new CieLchuv(Vector3.One); |
|||
Assert.Equal(default(CieLchuv), default(CieLchuv)); |
|||
Assert.Equal(new CieLchuv(1, 0, 1), new CieLchuv(1, 0, 1)); |
|||
Assert.Equal(new CieLchuv(Vector3.One), new CieLchuv(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
|
|||
[Fact] |
|||
public void CieLuvEquality() |
|||
{ |
|||
var x = default(CieLuv); |
|||
var y = new CieLuv(Vector3.One); |
|||
Assert.Equal(default(CieLuv), default(CieLuv)); |
|||
Assert.Equal(new CieLuv(1, 0, 1), new CieLuv(1, 0, 1)); |
|||
Assert.Equal(new CieLuv(Vector3.One), new CieLuv(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
|
|||
[Fact] |
|||
public void CieXyzEquality() |
|||
{ |
|||
var x = default(CieXyz); |
|||
var y = new CieXyz(Vector3.One); |
|||
Assert.Equal(default(CieXyz), default(CieXyz)); |
|||
Assert.Equal(new CieXyz(1, 0, 1), new CieXyz(1, 0, 1)); |
|||
Assert.Equal(new CieXyz(Vector3.One), new CieXyz(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
|
|||
[Fact] |
|||
public void CieXyyEquality() |
|||
{ |
|||
var x = default(CieXyy); |
|||
var y = new CieXyy(Vector3.One); |
|||
Assert.Equal(default(CieXyy), default(CieXyy)); |
|||
Assert.Equal(new CieXyy(1, 0, 1), new CieXyy(1, 0, 1)); |
|||
Assert.Equal(new CieXyy(Vector3.One), new CieXyy(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
|
|||
[Fact] |
|||
public void HslEquality() |
|||
{ |
|||
var x = default(Hsl); |
|||
var y = new Hsl(Vector3.One); |
|||
Assert.Equal(default(Hsl), default(Hsl)); |
|||
Assert.Equal(new Hsl(1, 0, 1), new Hsl(1, 0, 1)); |
|||
Assert.Equal(new Hsl(Vector3.One), new Hsl(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
|
|||
[Fact] |
|||
public void HsvEquality() |
|||
{ |
|||
var x = default(Hsv); |
|||
var y = new Hsv(Vector3.One); |
|||
Assert.Equal(default(Hsv), default(Hsv)); |
|||
Assert.Equal(new Hsv(1, 0, 1), new Hsv(1, 0, 1)); |
|||
Assert.Equal(new Hsv(Vector3.One), new Hsv(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
|
|||
[Fact] |
|||
public void HunterLabEquality() |
|||
{ |
|||
var x = default(HunterLab); |
|||
var y = new HunterLab(Vector3.One); |
|||
Assert.Equal(default(HunterLab), default(HunterLab)); |
|||
Assert.Equal(new HunterLab(1, 0, 1), new HunterLab(1, 0, 1)); |
|||
Assert.Equal(new HunterLab(Vector3.One), new HunterLab(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
|
|||
[Fact] |
|||
public void LmsEquality() |
|||
{ |
|||
var x = default(Lms); |
|||
var y = new Lms(Vector3.One); |
|||
Assert.Equal(default(Lms), default(Lms)); |
|||
Assert.Equal(new Lms(1, 0, 1), new Lms(1, 0, 1)); |
|||
Assert.Equal(new Lms(Vector3.One), new Lms(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
|
|||
[Fact] |
|||
public void LinearRgbEquality() |
|||
{ |
|||
var x = default(LinearRgb); |
|||
var y = new LinearRgb(Vector3.One); |
|||
Assert.Equal(default(LinearRgb), default(LinearRgb)); |
|||
Assert.Equal(new LinearRgb(1, 0, 1), new LinearRgb(1, 0, 1)); |
|||
Assert.Equal(new LinearRgb(Vector3.One), new LinearRgb(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
|
|||
[Fact] |
|||
public void YCbCrEquality() |
|||
{ |
|||
var x = default(YCbCr); |
|||
var y = new YCbCr(Vector3.One); |
|||
Assert.Equal(default(YCbCr), default(YCbCr)); |
|||
Assert.Equal(new YCbCr(1, 0, 1), new YCbCr(1, 0, 1)); |
|||
Assert.Equal(new YCbCr(Vector3.One), new YCbCr(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
|
|||
[Fact] |
|||
public void CmykEquality() |
|||
{ |
|||
var x = default(Cmyk); |
|||
var y = new Cmyk(Vector4.One); |
|||
Assert.Equal(default(Cmyk), default(Cmyk)); |
|||
Assert.Equal(new Cmyk(1, 0, 1, 0), new Cmyk(1, 0, 1, 0)); |
|||
Assert.Equal(new Cmyk(Vector4.One), new Cmyk(Vector4.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,39 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Tests the <see cref="Hsl"/> struct.
|
|||
/// </summary>
|
|||
public class HslTests |
|||
{ |
|||
[Fact] |
|||
public void HslConstructorAssignsFields() |
|||
{ |
|||
const float h = 275F; |
|||
const float s = .64F; |
|||
const float l = .87F; |
|||
var hsl = new Hsl(h, s, l); |
|||
|
|||
Assert.Equal(h, hsl.H); |
|||
Assert.Equal(s, hsl.S); |
|||
Assert.Equal(l, hsl.L); |
|||
} |
|||
|
|||
[Fact] |
|||
public void HslEquality() |
|||
{ |
|||
var x = default(Hsl); |
|||
var y = new Hsl(Vector3.One); |
|||
Assert.Equal(default(Hsl), default(Hsl)); |
|||
Assert.Equal(new Hsl(1, 0, 1), new Hsl(1, 0, 1)); |
|||
Assert.Equal(new Hsl(Vector3.One), new Hsl(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,39 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Tests the <see cref="Hsv"/> struct.
|
|||
/// </summary>
|
|||
public class HsvTests |
|||
{ |
|||
[Fact] |
|||
public void HsvConstructorAssignsFields() |
|||
{ |
|||
const float h = 275F; |
|||
const float s = .64F; |
|||
const float v = .87F; |
|||
var hsv = new Hsv(h, s, v); |
|||
|
|||
Assert.Equal(h, hsv.H); |
|||
Assert.Equal(s, hsv.S); |
|||
Assert.Equal(v, hsv.V); |
|||
} |
|||
|
|||
[Fact] |
|||
public void HsvEquality() |
|||
{ |
|||
var x = default(Hsv); |
|||
var y = new Hsv(Vector3.One); |
|||
Assert.Equal(default(Hsv), default(Hsv)); |
|||
Assert.Equal(new Hsv(1, 0, 1), new Hsv(1, 0, 1)); |
|||
Assert.Equal(new Hsv(Vector3.One), new Hsv(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,43 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Tests the <see cref="HunterLab"/> struct.
|
|||
/// </summary>
|
|||
public class HunterLabTests |
|||
{ |
|||
[Fact] |
|||
public void HunterLabConstructorAssignsFields() |
|||
{ |
|||
const float l = 75F; |
|||
const float a = -64F; |
|||
const float b = 87F; |
|||
var hunterLab = new HunterLab(l, a, b); |
|||
|
|||
Assert.Equal(l, hunterLab.L); |
|||
Assert.Equal(a, hunterLab.A); |
|||
Assert.Equal(b, hunterLab.B); |
|||
} |
|||
|
|||
[Fact] |
|||
public void HunterLabEquality() |
|||
{ |
|||
var x = default(HunterLab); |
|||
var y = new HunterLab(Vector3.One); |
|||
|
|||
Assert.True(default(HunterLab) == default(HunterLab)); |
|||
Assert.True(default(HunterLab) != new HunterLab(1, 0, 1)); |
|||
Assert.False(default(HunterLab) == new HunterLab(1, 0, 1)); |
|||
Assert.Equal(default(HunterLab), default(HunterLab)); |
|||
Assert.Equal(new HunterLab(1, 0, 1), new HunterLab(1, 0, 1)); |
|||
Assert.Equal(new HunterLab(Vector3.One), new HunterLab(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,42 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Tests the <see cref="LinearRgb"/> struct.
|
|||
/// </summary>
|
|||
public class LinearRgbTests |
|||
{ |
|||
[Fact] |
|||
public void LinearRgbConstructorAssignsFields() |
|||
{ |
|||
const float r = .75F; |
|||
const float g = .64F; |
|||
const float b = .87F; |
|||
var rgb = new LinearRgb(r, g, b); |
|||
|
|||
Assert.Equal(r, rgb.R); |
|||
Assert.Equal(g, rgb.G); |
|||
Assert.Equal(b, rgb.B); |
|||
} |
|||
|
|||
[Fact] |
|||
public void LinearRgbEquality() |
|||
{ |
|||
var x = default(LinearRgb); |
|||
var y = new LinearRgb(Vector3.One); |
|||
|
|||
Assert.True(default(LinearRgb) == default(LinearRgb)); |
|||
Assert.False(default(LinearRgb) != default(LinearRgb)); |
|||
Assert.Equal(default(LinearRgb), default(LinearRgb)); |
|||
Assert.Equal(new LinearRgb(1, 0, 1), new LinearRgb(1, 0, 1)); |
|||
Assert.Equal(new LinearRgb(Vector3.One), new LinearRgb(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,43 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Tests the <see cref="Lms"/> struct.
|
|||
/// </summary>
|
|||
public class LmsTests |
|||
{ |
|||
[Fact] |
|||
public void LmsConstructorAssignsFields() |
|||
{ |
|||
const float l = 75F; |
|||
const float m = -64F; |
|||
const float s = 87F; |
|||
var Lms = new Lms(l, m, s); |
|||
|
|||
Assert.Equal(l, Lms.L); |
|||
Assert.Equal(m, Lms.M); |
|||
Assert.Equal(s, Lms.S); |
|||
} |
|||
|
|||
[Fact] |
|||
public void LmsEquality() |
|||
{ |
|||
var x = default(Lms); |
|||
var y = new Lms(Vector3.One); |
|||
|
|||
Assert.True(default(Lms) == default(Lms)); |
|||
Assert.True(default(Lms) != new Lms(1, 0, 1)); |
|||
Assert.False(default(Lms) == new Lms(1, 0, 1)); |
|||
Assert.Equal(default(Lms), default(Lms)); |
|||
Assert.Equal(new Lms(1, 0, 1), new Lms(1, 0, 1)); |
|||
Assert.Equal(new Lms(Vector3.One), new Lms(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,42 @@ |
|||
// Copyright (c) Six Labors and contributors.
|
|||
// Licensed under the Apache License, Version 2.0.
|
|||
|
|||
using System.Numerics; |
|||
using SixLabors.ImageSharp.ColorSpaces; |
|||
using Xunit; |
|||
|
|||
namespace SixLabors.ImageSharp.Tests.Colorspaces |
|||
{ |
|||
/// <summary>
|
|||
/// Tests the <see cref="YCbCr"/> struct.
|
|||
/// </summary>
|
|||
public class YCbCrTests |
|||
{ |
|||
[Fact] |
|||
public void YCbCrConstructorAssignsFields() |
|||
{ |
|||
const float y = 75F; |
|||
const float cb = 64F; |
|||
const float cr = 87F; |
|||
var yCbCr = new YCbCr(y, cb, cr); |
|||
|
|||
Assert.Equal(y, yCbCr.Y); |
|||
Assert.Equal(cb, yCbCr.Cb); |
|||
Assert.Equal(cr, yCbCr.Cr); |
|||
} |
|||
|
|||
[Fact] |
|||
public void YCbCrEquality() |
|||
{ |
|||
var x = default(YCbCr); |
|||
var y = new YCbCr(Vector3.One); |
|||
|
|||
Assert.True(default(YCbCr) == default(YCbCr)); |
|||
Assert.False(default(YCbCr) != default(YCbCr)); |
|||
Assert.Equal(default(YCbCr), default(YCbCr)); |
|||
Assert.Equal(new YCbCr(1, 0, 1), new YCbCr(1, 0, 1)); |
|||
Assert.Equal(new YCbCr(Vector3.One), new YCbCr(Vector3.One)); |
|||
Assert.False(x.Equals(y)); |
|||
} |
|||
} |
|||
} |
|||
Loading…
Reference in new issue