X10D/X10D.Tests/src/Time/Int64Tests.cs

57 lines
2.0 KiB
C#
Raw Normal View History

using Microsoft.VisualStudio.TestTools.UnitTesting;
using X10D.Time;
namespace X10D.Tests.Time;
[TestClass]
public class Int64Tests
{
[TestMethod]
public void FromUnixTimeMilliseconds_ShouldBeEpoch_GivenZero()
{
Assert.AreEqual(new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc), 0L.FromUnixTimeMilliseconds());
}
[TestMethod]
public void FromUnixTimeSeconds_ShouldBeEpoch_GivenZero()
{
Assert.AreEqual(new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc), 0L.FromUnixTimeSeconds());
}
[TestMethod]
public void TicksMillisecondsSecondsMinutesDaysHoursWeeks_ShouldBeNegative_GivenMinusOne()
{
Assert.IsTrue((-1L).Ticks() < TimeSpan.Zero);
Assert.IsTrue((-1L).Milliseconds() < TimeSpan.Zero);
Assert.IsTrue((-1L).Seconds() < TimeSpan.Zero);
Assert.IsTrue((-1L).Minutes() < TimeSpan.Zero);
Assert.IsTrue((-1L).Days() < TimeSpan.Zero);
Assert.IsTrue((-1L).Hours() < TimeSpan.Zero);
Assert.IsTrue((-1L).Weeks() < TimeSpan.Zero);
}
[TestMethod]
public void TicksMillisecondsSecondsMinutesDaysHoursWeeks_ShouldBePositive_GivenOne()
{
Assert.IsTrue(1L.Ticks() > TimeSpan.Zero);
Assert.IsTrue(1L.Milliseconds() > TimeSpan.Zero);
Assert.IsTrue(1L.Seconds() > TimeSpan.Zero);
Assert.IsTrue(1L.Minutes() > TimeSpan.Zero);
Assert.IsTrue(1L.Days() > TimeSpan.Zero);
Assert.IsTrue(1L.Hours() > TimeSpan.Zero);
Assert.IsTrue(1L.Weeks() > TimeSpan.Zero);
}
[TestMethod]
public void TicksMillisecondsSecondsMinutesDaysHoursWeeks_ShouldBeZero_GivenZero()
{
Assert.AreEqual(TimeSpan.Zero, 0L.Ticks());
Assert.AreEqual(TimeSpan.Zero, 0L.Milliseconds());
Assert.AreEqual(TimeSpan.Zero, 0L.Seconds());
Assert.AreEqual(TimeSpan.Zero, 0L.Minutes());
Assert.AreEqual(TimeSpan.Zero, 0L.Days());
Assert.AreEqual(TimeSpan.Zero, 0L.Hours());
Assert.AreEqual(TimeSpan.Zero, 0L.Weeks());
}
}