public void GivenAHeyRemember_WithACronExpression_NextDateShouldEvaluteAsFollows(string cronExpression, string expectedDateStr, string startingDateStr) { DateTime startingDate = DateTime.Parse(startingDateStr); HeyRememberDto hey = new HeyRememberDto() { When = new [] { startingDate }, CronExpression = cronExpression }; DateTime expected = DateTime.Parse(expectedDateStr); FindDatesFromHeyRemember findDates = new FindDatesFromHeyRemember(hey); DateTime nextDate = findDates.Next(startingDate); Assert.AreEqual(expected, nextDate); }
public void GivenAHeyRemember_WithACronExpression_IfScheduledToday_NextDateShouldEvaluteAsFollows() { DateTime startingDate = DateTime.UtcNow; DateTime expected = startingDate.AddMinutes(30); HeyRememberDto hey = new HeyRememberDto() { When = new[] { startingDate }, CronExpression = $"{expected.Minute} {expected.Hour} * * *" }; FindDatesFromHeyRemember findDates = new FindDatesFromHeyRemember(hey); DateTime nextDate = findDates.Next(startingDate); Assert.That(nextDate, Is.EqualTo(expected).Within(TimeSpan.FromMinutes(1))); }