public void GetHashCode_UseDefault() { var s = "Scooby Doo"; var comparer = new ComparerImpl <string>(String.CompareOrdinal); Assert.AreEqual(s.GetHashCode(), comparer.GetHashCode(s)); }
public int IndexOf([NotNull] TEnum[] arr, TEnum val) => ComparerImpl.BinarySearch(arr, val);
public int Compare(TEnum x, TEnum y) => ComparerImpl.Compare(x, y);
public int GetHashCode(TEnum obj) => ComparerImpl.GetHashCode(obj);
public bool Equals(TEnum x, TEnum y) => ComparerImpl.Equals(x, y);
public void Equals_WhereNotEqual_ExpectTrue() { var comparer = new ComparerImpl <string>(String.CompareOrdinal); Assert.IsFalse(comparer.Equals("ABC", "DEF")); }
public void CompareObjectWithNotStrings_ExpectInvalidCastException() { var comparer = new ComparerImpl <string>((a, b) => 123); Assert.Throws <InvalidCastException>(() => comparer.Compare((object)1, (object)2)); }
public void CompareObjectWithBothStrings_ExpectSuppliedComparerToBeCalled() { var comparer = new ComparerImpl <string>((a, b) => 123); Assert.AreEqual(123, comparer.Compare((object)"A", (object)"B")); }
public void CompareStrings_ExpectSuppliedComparerToBeCalled() { var comparer = new ComparerImpl <string>((a, b) => 123); Assert.AreEqual(123, comparer.Compare("A", "B")); }