public void TestIsAtLeastANullableDayBefore() { DateTime? wellKnownDay = new DateTime(2002, 4, 4); Enumerable.Range(-10, 9). Select(x => wellKnownDay.Value.AddDays(x)). Select(x => new DateTime?(x)).ToList(). ForEach(x => Assert.IsFalse(wellKnownDay.IsAtLeastOneDayBefore(x))); Enumerable.Range(1, 9). Select(x => wellKnownDay.Value.AddDays(x)). Select(x => new DateTime?(x)).ToList(). ForEach(x => Assert.IsTrue(wellKnownDay.IsAtLeastOneDayBefore(x))); Assert.IsFalse(((DateTime?) wellKnownDay).IsAtLeastOneDayBefore(wellKnownDay)); Assert.IsFalse(((DateTime?) null).IsAtLeastOneDayBefore(wellKnownDay)); Assert.IsFalse(((DateTime?) null).IsAtLeastOneDayBefore(null)); Assert.IsFalse(wellKnownDay.IsAtLeastOneDayBefore(null)); }
public string ValidateListPurchaseOrders(Vendor vendor, DateTime? fromDate, DateTime? toDate) { return toDate.IsAtLeastOneDayBefore(fromDate) ? "To Date cannot be before From Date" : null; }
public void TestIsAtLeastOneDayBefore() { var wellKnownDay = new DateTime(2002, 4, 4); var nextDay = wellKnownDay.AddDays(1); //Simple test Assert.IsFalse(nextDay.IsAtLeastOneDayBefore(wellKnownDay)); Assert.IsTrue(wellKnownDay.IsAtLeastOneDayBefore(nextDay)); Enumerable.Range(-10, 9). Select(x => wellKnownDay.AddDays(x)).ToList(). ForEach(x => Assert.IsFalse(wellKnownDay.IsAtLeastOneDayBefore(x))); Enumerable.Range(1, 9). Select(x => wellKnownDay.AddDays(x)).ToList(). ForEach(x => Assert.IsTrue(wellKnownDay.IsAtLeastOneDayBefore(x))); Assert.IsFalse(wellKnownDay.IsAtLeastOneDayBefore(null)); Assert.IsFalse(wellKnownDay.IsAtLeastOneDayBefore(wellKnownDay)); }