Currently I've wrote the code but I cannot submit it.
/// <summary>
/// Use for getting a random UTC DateTimes for your unit tests. Always returns a date in the past.
/// </summary>
/// <returns>A random UTC DateTime</returns>
public static DateTime DateTimeUtc(DateTime? minDateTime = null, DateTime? maxDateTime = null)
{
//discovery of galilean moons. Using system.DateTime.Min just made weird looking dates.
var myMinDateTime = minDateTime.HasValue ? minDateTime.Value.ToUniversalTime() : new DateTime(1610, 1, 7).ToUniversalTime();
var myMaxDateTime = maxDateTime.HasValue ? myMinDateTime.ToUniversalTime() : System.DateTime.UtcNow;
var timeSinceStartOfDateTime = myMaxDateTime - myMinDateTime;
var timeInHoursSinceStartOfDateTime = (int)timeSinceStartOfDateTime.TotalHours;
var hoursToSubtract = Int(timeInHoursSinceStartOfDateTime) * -1;
var timeToReturn = myMaxDateTime.AddHours(hoursToSubtract);
if (timeToReturn > myMinDateTime && timeToReturn < myMaxDateTime)
{
return timeToReturn;
}
return System.DateTime.UtcNow;
}
Currently I've wrote the code but I cannot submit it.