You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
2.0 KiB
48 lines
2.0 KiB
3 years ago
|
# ColorEqualityComparer
|
||
|
|
||
|
Use this class to compare two `Color` objects. `ColorEqualityComparer.Instance` has default calculation error value set to 0.01f. To set a test specific error value instantiate a comparer instance using the [one argument constructor](#constructors).
|
||
|
|
||
|
## Static properties
|
||
|
|
||
|
| Syntax | Description |
|
||
|
| ---------- | ------------------------------------------------------------ |
|
||
|
| `Instance` | A singleton instance of the comparer with a default error value set to 0.01f. |
|
||
|
|
||
|
## Constructors
|
||
|
|
||
|
| Syntax | Description |
|
||
|
| ------------------------------------ | ------------------------------------------------------------ |
|
||
|
| `ColorEqualityComparer(float error)` | Creates an instance of the comparer with a custom error value. |
|
||
|
|
||
|
## Public methods
|
||
|
|
||
|
| Syntax | Description |
|
||
|
| -------------------------------------------- | ------------------------------------------------------------ |
|
||
|
| `bool Equals(Color expected, Color actual);` | Compares the actual and expected `Color` objects for equality using `Utils.AreFloatsEqualAbsoluteError` to compare the `RGB` and `Alpha` attributes of `Color`. Returns `true` if expected and actual objects are equal otherwise, it returns `false`. |
|
||
|
|
||
|
## Example
|
||
|
|
||
|
```c#
|
||
|
[TestFixture]
|
||
|
public class ColorEqualityTest
|
||
|
{
|
||
|
[Test]
|
||
|
public void GivenColorsAreEqual_WithAllowedCalculationError()
|
||
|
{
|
||
|
// Using default error
|
||
|
var firstColor = new Color(0f, 0f, 0f, 0f);
|
||
|
var secondColor = new Color(0f, 0f, 0f, 0f);
|
||
|
|
||
|
Assert.That(firstColor, Is.EqualTo(secondColor).Using(ColorEqualityComparer.Instance));
|
||
|
|
||
|
// Allowed error 10e-5f
|
||
|
var comparer = new ColorEqualityComparer(10e-5f);
|
||
|
firstColor = new Color(0f, 0f, 0f, 1f);
|
||
|
secondColor = new Color(10e-6f, 0f, 0f, 1f);
|
||
|
|
||
|
Assert.That(firstColor, Is.EqualTo(secondColor).Using(comparer));
|
||
|
}
|
||
|
}
|
||
|
```
|
||
|
|