durationOffset = parsePeriod(period[0]); } else { begin = beginning(getFuzzyDate(period[0])); end = end(getFuzzyDate(period[1])); final Calendar calendar = new GregorianCalendar(); calendar.setTimeInMillis(end.getTime() - durationOffset); begin = beginning(getFuzzyDate(period[0])); end = end(getFuzzyDate(period[1]));
public void testReducedAccuracyYear() throws Exception { Calendar c = new GregorianCalendar(); c.setTimeZone(TimeParser.UTC_TZ); DateRange year = (DateRange) TimeParser.getFuzzyDate("2000"); c.clear(); c.set(Calendar.YEAR, 2000); assertRangeStarts(year, c.getTime()); c.set(Calendar.YEAR, 2001); c.add(Calendar.MILLISECOND, -1); assertRangeEnds(year, c.getTime()); year = (DateRange) TimeParser.getFuzzyDate("2001"); c.clear(); c.set(Calendar.YEAR, 2001); assertRangeStarts(year, c.getTime()); c.set(Calendar.YEAR, 2002); c.add(Calendar.MILLISECOND, -1); assertRangeEnds(year, c.getTime()); year = (DateRange) TimeParser.getFuzzyDate("-6052"); c.clear(); c.set(Calendar.ERA, GregorianCalendar.BC); c.set(Calendar.YEAR, 6053); assertRangeStarts(year, c.getTime()); c.set(Calendar.YEAR, 6052); c.add(Calendar.MILLISECOND, -1); assertRangeEnds(year, c.getTime()); }
c.clear(); Date instant = (Date) TimeParser.getFuzzyDate("2000-04-04T12:00:00.000Z"); c.set(Calendar.YEAR, 2000); c.set(Calendar.MONTH, 3); // 0-indexed TimeParser.getFuzzyDate( "2005-12-31T23:59:60.000Z"); // selected due to leapsecond at assertEquals(instant, c.getTime()); instant = (Date) TimeParser.getFuzzyDate("-25-06-08T17:15:00.123Z"); c.clear(); c.set(Calendar.ERA, GregorianCalendar.BC);
Object o = getFuzzyDate(date); if (o instanceof Date) { addDate(result, (Date) o);
c.clear(); DateRange hour = (DateRange) TimeParser.getFuzzyDate("2000-04-04T12Z"); c.set(Calendar.YEAR, 2000); c.set(Calendar.MONTH, 3); // 0-indexed TimeParser.getFuzzyDate( "2005-12-31T23Z"); // selected due to leapsecond at 23:59:60 UTC c.clear(); assertRangeEnds(hour, c.getTime()); hour = (DateRange) TimeParser.getFuzzyDate("-25-06-08T17Z"); c.clear(); c.set(Calendar.ERA, GregorianCalendar.BC);