public void RoundSecondsAllows61SecondsDuringLeapSecond() { GregorianDate gregorianDate = new GregorianDate(2012, 6, 30, 23, 59, 59.9999999); Assert.AreEqual(new GregorianDate(2012, 6, 30, 23, 59, 60.0), gregorianDate.RoundSeconds(6)); gregorianDate = new GregorianDate(2012, 6, 30, 23, 59, 60.9999999); Assert.AreEqual(new GregorianDate(2012, 7, 1, 0, 0, 0.0), gregorianDate.RoundSeconds(6)); }
public void RoundSecondsRoundsFractionalSeconds() { GregorianDate gregorianDate = new GregorianDate(2012, 8, 7, 13, 59, 55.5152535); Assert.AreEqual(new GregorianDate(2012, 8, 7, 13, 59, 55.5152535), gregorianDate.RoundSeconds(7)); Assert.AreEqual(new GregorianDate(2012, 8, 7, 13, 59, 55.515254), gregorianDate.RoundSeconds(6)); Assert.AreEqual(new GregorianDate(2012, 8, 7, 13, 59, 55.51525), gregorianDate.RoundSeconds(5)); Assert.AreEqual(new GregorianDate(2012, 8, 7, 13, 59, 55.5153), gregorianDate.RoundSeconds(4)); Assert.AreEqual(new GregorianDate(2012, 8, 7, 13, 59, 55.515), gregorianDate.RoundSeconds(3)); Assert.AreEqual(new GregorianDate(2012, 8, 7, 13, 59, 55.52), gregorianDate.RoundSeconds(2)); Assert.AreEqual(new GregorianDate(2012, 8, 7, 13, 59, 55.5), gregorianDate.RoundSeconds(1)); Assert.AreEqual(new GregorianDate(2012, 8, 7, 13, 59, 56), gregorianDate.RoundSeconds(0)); }
public void RoundSecondsRollsOver() { GregorianDate gregorianDate = new GregorianDate(2012, 8, 7, 13, 55, 59.9999999); Assert.AreEqual(new GregorianDate(2012, 8, 7, 13, 56, 0.0), gregorianDate.RoundSeconds(6)); gregorianDate = new GregorianDate(2012, 8, 7, 13, 59, 59.9999999); Assert.AreEqual(new GregorianDate(2012, 8, 7, 14, 0, 0.0), gregorianDate.RoundSeconds(6)); gregorianDate = new GregorianDate(2012, 8, 7, 23, 59, 59.9999999); Assert.AreEqual(new GregorianDate(2012, 8, 8, 0, 0, 0.0), gregorianDate.RoundSeconds(6)); gregorianDate = new GregorianDate(2012, 8, 31, 23, 59, 59.9999999); Assert.AreEqual(new GregorianDate(2012, 9, 1, 0, 0, 0.0), gregorianDate.RoundSeconds(6)); gregorianDate = new GregorianDate(2012, 12, 31, 23, 59, 59.9999999); Assert.AreEqual(new GregorianDate(2013, 1, 1, 0, 0, 0.0), gregorianDate.RoundSeconds(6)); }
public void RoundSecondsDoesNotAllow61SecondsDuringLeapSecondIfTimeStandardIsNotUtc() { GregorianDate gregorianDate = new GregorianDate(2012, 6, 30, 23, 59, 59.9999999); Assert.AreEqual(new GregorianDate(2012, 7, 1, 0, 0, 0.0), gregorianDate.RoundSeconds(6, TimeStandard.InternationalAtomicTime)); }