107 lines
3.1 KiB
C#
107 lines
3.1 KiB
C#
using ReportingServices.HelperClasses;
|
|
using ReportingServices.ReportingObjects;
|
|
using System.Text.Json;
|
|
|
|
namespace ReportingServices.Test
|
|
{
|
|
[TestClass]
|
|
public class UnitTest1
|
|
{
|
|
[TestMethod]
|
|
public void CheckAPIIsNotNull()
|
|
{
|
|
// Arrange
|
|
APICaller apiCaller = new APICaller();
|
|
|
|
// Act
|
|
apiCaller.CallAllAPIs();
|
|
|
|
// Assert
|
|
Assert.IsNotNull(apiCaller);
|
|
}
|
|
|
|
[TestMethod]
|
|
public void CheckStartDateForWeekNow()
|
|
{
|
|
// Arrange
|
|
APICaller apiCaller = new APICaller();
|
|
string date = DetermineDate();
|
|
|
|
// Act
|
|
string callerDate = apiCaller.DetermineStartDate();
|
|
|
|
// Assert
|
|
Assert.AreEqual(date, callerDate);
|
|
}
|
|
|
|
[TestMethod]
|
|
public void CheckStartDateForWeekWednesday()
|
|
{
|
|
// Arrange
|
|
APICaller apiCaller = new APICaller();
|
|
string date = "2022-11-21%200%3A0%3A0";
|
|
|
|
// Act
|
|
string callerDate = apiCaller.DetermineStartDate("11/23/2022");
|
|
|
|
// Assert
|
|
Assert.AreEqual(date, callerDate);
|
|
}
|
|
|
|
[TestMethod]
|
|
public void CheckStartDateForWeekMonday()
|
|
{
|
|
// Arrange
|
|
APICaller apiCaller = new APICaller();
|
|
string date = "2022-11-14%200%3A0%3A0";
|
|
|
|
// Act
|
|
string callerDate = apiCaller.DetermineStartDate("11/21/2022");
|
|
|
|
// Assert
|
|
Assert.AreEqual(date, callerDate);
|
|
}
|
|
|
|
[TestMethod]
|
|
public void CheckStartDateForDayPassedInAndHoursAdded()
|
|
{
|
|
// Arrange
|
|
APICaller apiCaller = new APICaller();
|
|
string date = "2022-11-23%200%3A0%3A0";
|
|
|
|
// Act
|
|
string callerDate = apiCaller.DetermineStartDate("11/23/2022 12:30 PM", 12.5f);
|
|
|
|
// Assert
|
|
Assert.AreEqual(date, callerDate);
|
|
}
|
|
|
|
private string DetermineDate()
|
|
{
|
|
DateTime date = DateTime.Now;
|
|
|
|
if (date.DayOfWeek == DayOfWeek.Monday)
|
|
return date.Year + "-" + date.Month + "-" + (date.Day - 7) + "%200%3A0%3A0";
|
|
|
|
if (date.DayOfWeek == DayOfWeek.Tuesday)
|
|
return date.Year + "-" + date.Month + "-" + (date.Day - 1) + "%200%3A0%3A0";
|
|
|
|
if (date.DayOfWeek == DayOfWeek.Wednesday)
|
|
return date.Year + "-" + date.Month + "-" + (date.Day - 2) + "%200%3A0%3A0";
|
|
|
|
if (date.DayOfWeek == DayOfWeek.Thursday)
|
|
return date.Year + "-" + date.Month + "-" + (date.Day - 3) + "%200%3A0%3A0";
|
|
|
|
if (date.DayOfWeek == DayOfWeek.Friday)
|
|
return date.Year + "-" + date.Month + "-" + (date.Day - 4) + "%200%3A0%3A0";
|
|
|
|
if (date.DayOfWeek == DayOfWeek.Saturday)
|
|
return date.Year + "-" + date.Month + "-" + (date.Day - 5) + "%200%3A0%3A0";
|
|
|
|
if (date.DayOfWeek == DayOfWeek.Sunday)
|
|
return date.Year + "-" + date.Month + "-" + (date.Day - 6) + "%200%3A0%3A0";
|
|
|
|
return "";
|
|
}
|
|
}
|
|
} |