docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class 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.

    Inheritance
    object
    ColorEqualityComparer
    Implements
    IEqualityComparer<Color>
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: UnityEngine.TestTools.Utils
    Assembly: UnityEngine.TestRunner.dll
    Syntax
    public class ColorEqualityComparer : IEqualityComparer<Color>

    Constructors

    ColorEqualityComparer(float)

    Creates an instance of the comparer with a custom error value.

    Declaration
    public ColorEqualityComparer(float error)
    Parameters
    Type Name Description
    float error

    The custom error value.

    Properties

    Instance

    A singleton instance of the comparer with a default error value set to 0.01f.

    Declaration
    public static ColorEqualityComparer Instance { get; }
    Property Value
    Type Description
    ColorEqualityComparer

    Methods

    Equals(Color, Color)

    Compares the actual and expected Color objects for equality using AreFloatsEqualAbsoluteError(float, float, float) to compare the RGB and Alpha attributes of Color. Returns true if expected and actual objects are equal otherwise, it returns false.

    Declaration
    public bool Equals(Color expected, Color actual)
    Parameters
    Type Name Description
    Color expected

    The expected Color value used to compare.

    Color actual

    The actual Color value to test.

    Returns
    Type Description
    bool

    True if actual and expected are equal, false otherwise

    Examples
    [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));
        }
    }

    GetHashCode(Color)

    Serves as the default hash function.

    Declaration
    public int GetHashCode(Color color)
    Parameters
    Type Name Description
    Color color

    A not null Color object.

    Returns
    Type Description
    int

    Returns 0.

    Implements

    IEqualityComparer<T>
    In This Article
    Back to top
    Copyright © 2024 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)