public void Should_pass_null_or_after_validation_when_date_is_null() { var obj = new { earlier = new K { Date = new DateTime(1979, 01, 01) }, later = new K { Date = null } }; Check.Result result = Check.That(obj).later.Date[Should.BeNullOrAfter(Check.That(obj).earlier.Date)]; Console.WriteLine(result.Reason); Assert.That(result.Success, Is.True, result.Reason); }