public static AndConstraint <ObjectAssertions> BeUsing(this ObjectAssertions assertions, object expected, IEqualityComparerSource source, string because = "", params object[] reasonArgs) { var actual = assertions.Subject; var comparer = actual == null ? ReferenceEqualsEqualityComparer.Instance : source.GetComparer(actual.GetType()); return(assertions.BeUsing(expected, comparer, because, reasonArgs)); }