public void RoundMonthEnd_Jan1() { DateTime d = new DateTime(1960, 1, 1); Assert.AreEqual(new DateTime(1960, 1, 31, 23, 59, 0), d.RoundMonthEnd(0)); Assert.AreEqual(new DateTime(1960, 1, 1, 23, 59, 0), d.RoundMonthEnd(1)); Assert.AreEqual(new DateTime(1960, 1, 2, 23, 59, 0), d.RoundMonthEnd(2)); Assert.AreEqual(new DateTime(1960, 1, 29, 23, 59, 0), d.RoundMonthEnd(29)); Assert.AreEqual(new DateTime(1960, 1, 30, 23, 59, 0), d.RoundMonthEnd(30)); Assert.AreEqual(new DateTime(1960, 1, 30, 23, 59, 0), d.RoundMonthEnd(-1)); Assert.AreEqual(new DateTime(1960, 1, 29, 23, 59, 0), d.RoundMonthEnd(-2)); Assert.AreEqual(new DateTime(1960, 1, 2, 23, 59, 0), d.RoundMonthEnd(-29)); Assert.AreEqual(new DateTime(1960, 1, 1, 23, 59, 0), d.RoundMonthEnd(-30)); }
public void RoundMonthEnd_Feb28() { DateTime d = new DateTime(1960, 2, 28); Assert.AreEqual(new DateTime(1960, 2, 29, 23, 59, 0), d.RoundMonthEnd(0)); Assert.AreEqual(new DateTime(1960, 3, 1, 23, 59, 0), d.RoundMonthEnd(1)); Assert.AreEqual(new DateTime(1960, 3, 2, 23, 59, 0), d.RoundMonthEnd(2)); Assert.AreEqual(new DateTime(1960, 2, 29, 23, 59, 0), d.RoundMonthEnd(29)); Assert.AreEqual(new DateTime(1960, 3, 1, 23, 59, 0), d.RoundMonthEnd(30)); Assert.AreEqual(new DateTime(1960, 2, 28, 23, 59, 0), d.RoundMonthEnd(-1)); Assert.AreEqual(new DateTime(1960, 3, 29, 23, 59, 0), d.RoundMonthEnd(-2)); Assert.AreEqual(new DateTime(1960, 3, 2, 23, 59, 0), d.RoundMonthEnd(-29)); Assert.AreEqual(new DateTime(1960, 3, 1, 23, 59, 0), d.RoundMonthEnd(-30)); }