### Question:
LocalDateRange extends Range<LocalDate> { public static LocalDateRange aged(final Range<ChronoAmount> range) { final LocalDate today = current().date(); validateAgeRangeAgainst(range, today); final ChronoAmount lowerBound = range.lowerBound(); final ChronoAmount upperBound = range.upperBound(); final LocalDate latestDate = lowerBound.unit().addTo(today, Math.negateExact(lowerBound.amount())); final LocalDate earliestDate = upperBound.unit().addTo(today, Math.negateExact(upperBound.amount())); return new LocalDateRange(earliestDate, latestDate); } private  LocalDateRange(final LocalDate lowerBound, final LocalDate upperBound); static LocalDateRange tomorrow(); static LocalDateRange all(); static LocalDateRange today(); static LocalDateRange inTheFuture(); static LocalDateRange inThePast(); static LocalDateRange after(final LocalDate date); static LocalDateRange before(final LocalDate date); static LocalDateRange aged(final Range<ChronoAmount> range);  }### Answer:
@Test public void agedRangeOfZeroDaysWhenTodayIsMinimumLocalDate() { Timekeeper.from(fixedClock(LocalDate.MIN)); final LocalDateRange range = aged(fixed(days(0))); assertThat(range.lowerBound()).isEqualTo(LocalDate.MIN); assertThat(range.upperBound()).isEqualTo(LocalDate.MIN); }
@Test public void agedRangeIsIllegalWhenTodayIsMinimumLocalDate() { thrown.expect(IllegalArgumentException.class); thrown.expectMessage("Date range cannot be earlier than the minimum date"); Timekeeper.from(fixedClock(LocalDate.MIN)); aged(fixed(days(1))); }
@Test public void agedRangeIsIllegalWhenAgeWouldBeBeforeMinimumLocalDateForLowerBound() { thrown.expect(IllegalArgumentException.class); thrown.expectMessage("Date range cannot be earlier than the minimum date"); Timekeeper.from(fixedClock(LocalDate.MIN.plusDays(10))); aged(fixed(days(11))); }
@Test public void agedRangeIsIllegalWhenAgeWouldBeBeforeMinimumLocalDateForUpperBound() { thrown.expect(IllegalArgumentException.class); thrown.expectMessage("Date range cannot be earlier than the minimum date"); Timekeeper.from(fixedClock(LocalDate.MIN.plusDays(10))); aged(closed(days(0), days(11))); }