public override bool Matches(object actual) { this.actual = actual; if (expected == null || actual == null) throw new ArgumentException("Cannot compare using a null reference"); return comparer.Compare(actual, expected) <= 0; } }