74 lines
2.0 KiB
C#
74 lines
2.0 KiB
C#
using Ursa.Controls;
|
|
|
|
namespace Test.Ursa.DateTimePicker;
|
|
|
|
public class DateTimeHelperTests
|
|
{
|
|
[Fact]
|
|
public void GetFirstDayOfMonth_ReturnsFirstDay()
|
|
{
|
|
var date = new DateTime(2023, 5, 15);
|
|
var firstDay = date.GetFirstDayOfMonth();
|
|
Assert.Equal(new DateTime(2023, 5, 1), firstDay);
|
|
}
|
|
|
|
[Fact]
|
|
public void GetLastDayOfMonth_ReturnsLastDay()
|
|
{
|
|
var date = new DateTime(2023, 5, 15);
|
|
var lastDay = date.GetLastDayOfMonth();
|
|
Assert.Equal(new DateTime(2023, 5, 31), lastDay);
|
|
}
|
|
|
|
[Fact]
|
|
public void CompareYearMonth_SameYearMonth_ReturnsZero()
|
|
{
|
|
var date1 = new DateTime(2023, 5, 15);
|
|
var date2 = new DateTime(2023, 5, 20);
|
|
var result = DateTimeHelper.CompareYearMonth(date1, date2);
|
|
Assert.Equal(0, result);
|
|
}
|
|
|
|
[Fact]
|
|
public void CompareYearMonth_DifferentYearMonth_ReturnsDifference()
|
|
{
|
|
var date1 = new DateTime(2023, 5, 15);
|
|
var date2 = new DateTime(2024, 6, 20);
|
|
var result = DateTimeHelper.CompareYearMonth(date1, date2);
|
|
Assert.Equal(-13, result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Min_ReturnsMinimumDate()
|
|
{
|
|
var date1 = new DateTime(2023, 5, 15);
|
|
var date2 = new DateTime(2024, 6, 20);
|
|
var result = DateTimeHelper.Min(date1, date2);
|
|
Assert.Equal(date1, result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Max_ReturnsMaximumDate()
|
|
{
|
|
var date1 = new DateTime(2023, 5, 15);
|
|
var date2 = new DateTime(2024, 6, 20);
|
|
var result = DateTimeHelper.Max(date1, date2);
|
|
Assert.Equal(date2, result);
|
|
}
|
|
|
|
[Fact]
|
|
public void GetDecadeViewRangeByYear_ReturnsCorrectRange()
|
|
{
|
|
var year = 2023;
|
|
var result = DateTimeHelper.GetDecadeViewRangeByYear(year);
|
|
Assert.Equal((2020, 2029), result);
|
|
}
|
|
|
|
[Fact]
|
|
public void GetCenturyViewRangeByYear_ReturnsCorrectRange()
|
|
{
|
|
var year = 2023;
|
|
var result = DateTimeHelper.GetCenturyViewRangeByYear(year);
|
|
Assert.Equal((2000, 2100), result);
|
|
}
|
|
} |