@Test
public void testTimeDiff() throws LensException {
ArrayList<String> minusFourDays =
Lists.newArrayList("-4 days", "-4days", "-4day", "-4 day", "- 4days", "- 4 day");
ArrayList<String> plusFourDays =
Lists.newArrayList("+4 days", "4 days", "+4days", "4day", "4 day", "+ 4days", "+ 4 day", "+4 day");
Set<TimeDiff> diffs = Sets.newHashSet();
for (String diffStr : minusFourDays) {
diffs.add(TimeDiff.parseFrom(diffStr));
}
assertEquals(diffs.size(), 1);
TimeDiff minusFourDaysDiff = diffs.iterator().next();
assertEquals(minusFourDaysDiff.quantity, -4);
assertEquals(minusFourDaysDiff.updatePeriod, DAILY);
diffs.clear();
for (String diffStr : plusFourDays) {
diffs.add(TimeDiff.parseFrom(diffStr));
}
assertEquals(diffs.size(), 1);
TimeDiff plusFourDaysDiff = diffs.iterator().next();
assertEquals(plusFourDaysDiff.quantity, 4);
assertEquals(plusFourDaysDiff.updatePeriod, DAILY);
Date now = new Date();
assertEquals(minusFourDaysDiff.offsetFrom(plusFourDaysDiff.offsetFrom(now)), now);
assertEquals(plusFourDaysDiff.offsetFrom(minusFourDaysDiff.offsetFrom(now)), now);
assertEquals(minusFourDaysDiff.negativeOffsetFrom(now), plusFourDaysDiff.offsetFrom(now));
assertEquals(minusFourDaysDiff.offsetFrom(now), plusFourDaysDiff.negativeOffsetFrom(now));
}