2022-04-21 20:37:20 +00:00
|
|
|
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|
|
|
|
using X10D.Time;
|
|
|
|
|
|
|
|
|
|
namespace X10D.Tests.Time;
|
|
|
|
|
|
|
|
|
|
[TestClass]
|
|
|
|
|
[CLSCompliant(false)]
|
|
|
|
|
public class UInt32Tests
|
|
|
|
|
{
|
2022-04-28 09:27:32 +00:00
|
|
|
|
[TestMethod]
|
|
|
|
|
public void IsLeapYear_ShouldBeFalse_GivenMultipleOf100()
|
|
|
|
|
{
|
|
|
|
|
Assert.IsFalse(100U.IsLeapYear());
|
|
|
|
|
Assert.IsFalse(1900U.IsLeapYear());
|
|
|
|
|
Assert.IsFalse(2100U.IsLeapYear());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[TestMethod]
|
|
|
|
|
public void IsLeapYear_ShouldBeFalse_GivenOddNumber()
|
|
|
|
|
{
|
|
|
|
|
Assert.IsFalse(1U.IsLeapYear());
|
|
|
|
|
Assert.IsFalse(101U.IsLeapYear());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[TestMethod]
|
|
|
|
|
public void IsLeapYear_ShouldBeTrue_GivenMultipleOf4Or400()
|
|
|
|
|
{
|
|
|
|
|
Assert.IsTrue(4U.IsLeapYear());
|
|
|
|
|
Assert.IsTrue(104U.IsLeapYear());
|
|
|
|
|
Assert.IsTrue(400U.IsLeapYear());
|
|
|
|
|
Assert.IsTrue(2000U.IsLeapYear());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[TestMethod]
|
|
|
|
|
public void IsLeapYear_ShouldThrow_GivenZero()
|
|
|
|
|
{
|
|
|
|
|
Assert.ThrowsException<ArgumentOutOfRangeException>(() => 0U.IsLeapYear());
|
|
|
|
|
}
|
|
|
|
|
|
2022-04-21 20:37:20 +00:00
|
|
|
|
[TestMethod]
|
2022-04-25 16:09:49 +00:00
|
|
|
|
public void TicksMillisecondsSecondsMinutesDaysHoursWeeks_ShouldBePositive_GivenOne()
|
2022-04-21 20:37:20 +00:00
|
|
|
|
{
|
|
|
|
|
Assert.IsTrue(1U.Ticks() > TimeSpan.Zero);
|
|
|
|
|
Assert.IsTrue(1U.Milliseconds() > TimeSpan.Zero);
|
|
|
|
|
Assert.IsTrue(1U.Seconds() > TimeSpan.Zero);
|
|
|
|
|
Assert.IsTrue(1U.Minutes() > TimeSpan.Zero);
|
|
|
|
|
Assert.IsTrue(1U.Days() > TimeSpan.Zero);
|
|
|
|
|
Assert.IsTrue(1U.Hours() > TimeSpan.Zero);
|
|
|
|
|
Assert.IsTrue(1U.Weeks() > TimeSpan.Zero);
|
|
|
|
|
}
|
2022-04-25 16:09:49 +00:00
|
|
|
|
|
|
|
|
|
[TestMethod]
|
|
|
|
|
public void TicksMillisecondsSecondsMinutesDaysHoursWeeks_ShouldBeZero_GivenZero()
|
|
|
|
|
{
|
|
|
|
|
Assert.AreEqual(TimeSpan.Zero, 0U.Ticks());
|
|
|
|
|
Assert.AreEqual(TimeSpan.Zero, 0U.Milliseconds());
|
|
|
|
|
Assert.AreEqual(TimeSpan.Zero, 0U.Seconds());
|
|
|
|
|
Assert.AreEqual(TimeSpan.Zero, 0U.Minutes());
|
|
|
|
|
Assert.AreEqual(TimeSpan.Zero, 0U.Days());
|
|
|
|
|
Assert.AreEqual(TimeSpan.Zero, 0U.Hours());
|
|
|
|
|
Assert.AreEqual(TimeSpan.Zero, 0U.Weeks());
|
|
|
|
|
}
|
2022-04-21 20:37:20 +00:00
|
|
|
|
}
|