public static void TodayIsBirthdayFebruary29Th() { var today = new DateTime(2021, 3, 1); var numberGenerator = new NumberGeneratorStub(new[] { 33, 2, 29 }); var expectedDateOfBirth = new DateTime(1988, 2, 29); CheckDateOfBirth(today, numberGenerator, expectedDateOfBirth); }
public static void TodayIsBirthday() { var today = new DateTime(2021, 2, 12); var numberGenerator = new NumberGeneratorStub(new[] { 34, 2, 12 }); var expectedDateOfBirth = new DateTime(1987, 2, 12); CheckDateOfBirth(today, numberGenerator, expectedDateOfBirth); }
public static void DateOfBirthIsOn29thOfFebruary() { var today = new DateTime(2021, 2, 10); var numberGenerator = new NumberGeneratorStub(new[] { 29, 2, 29, 23 }); var expectedDateOfBirth = new DateTime(1991, 2, 23); CheckDateOfBirth(today, numberGenerator, expectedDateOfBirth); }
public static void DateOfBirthOnLaterDayInSameMonth() { var today = new DateTime(2021, 3, 15); var numberGenerator = new NumberGeneratorStub(new[] { 33, 3, 28 }); var expectedDateOfBirth = new DateTime(1987, 3, 28); CheckDateOfBirth(today, numberGenerator, expectedDateOfBirth); }
public static void DateOfBirthInLaterMonthThanToday() { var today = new DateTime(2021, 2, 7); var numberGenerator = new NumberGeneratorStub(new[] { 40, 5, 31 }); var expectedDateOfBirth = new DateTime(1980, 5, 31); CheckDateOfBirth(today, numberGenerator, expectedDateOfBirth); }
public static void DateOfBirthInSameYear() { var today = new DateTime(2021, 2, 6); var numberGenerator = new NumberGeneratorStub(new[] { 21, 1, 25 }); var expectedDateOfBirth = new DateTime(2000, 1, 25); CheckDateOfBirth(today, numberGenerator, expectedDateOfBirth); }
private static void CheckDateOfBirth(DateTime today, NumberGeneratorStub numberGenerator, DateTime expectedDateOfBirth) { var actualDateOfBirth = DateOfBirth.CreateRandom(today, numberGenerator.GetNextNumberDelegate); actualDateOfBirth.Should().Be(expectedDateOfBirth); }