Java Code Examples for java.time.Instant#equals()
The following examples show how to use
java.time.Instant#equals() .
These examples are extracted from open source projects.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: FHIR File: LastUpdatedParmBehaviorUtil.java License: Apache License 2.0 | 6 votes |
/** * builds equals range * * @param whereClauseSegment * @param lowerBound * @param upperBound */ public void buildEqualsRangeClause(StringBuilder whereClauseSegment, Instant lowerBound, Instant upperBound) { bindVariables.add(generateTimestamp(lowerBound)); if (!lowerBound.equals(upperBound)) { // @formatter:off whereClauseSegment .append(LEFT_PAREN) .append(LAST_UPDATED_COLUMN_NAME).append(GTE).append(BIND_VAR) .append(AND) .append(LAST_UPDATED_COLUMN_NAME).append(LTE).append(BIND_VAR) .append(RIGHT_PAREN); // @formatter:on bindVariables.add(generateTimestamp(upperBound)); } else { // @formatter:off whereClauseSegment .append(LEFT_PAREN) .append(LAST_UPDATED_COLUMN_NAME).append(EQ).append(BIND_VAR) .append(RIGHT_PAREN); // @formatter:on } }
Example 2
Source Project: atlas File: AtlasMetricsCounter.java License: Apache License 2.0 | 6 votes |
protected synchronized void rolloverHour(Instant fromHourEndTime, Instant now) { if (fromHourEndTime == hourEndTime) { // only if rollover was not done already Instant hourStartTime = getHourStartTime(now); if (hourStartTime.equals(hourEndTime)) { stats.copy(CURR_HOUR, PREV_HOUR); } else { stats.reset(PREV_HOUR); } stats.reset(CURR_HOUR); this.hourStartTime = hourStartTime; this.hourEndTime = getNextHourStartTime(now); } }
Example 3
Source Project: tutorials File: DateComparisonUtils.java License: MIT License | 5 votes |
public static boolean isSameDayUsingInstant(Date date1, Date date2) { Instant instant1 = date1.toInstant() .truncatedTo(ChronoUnit.DAYS); Instant instant2 = date2.toInstant() .truncatedTo(ChronoUnit.DAYS); return instant1.equals(instant2); }
Example 4
Source Project: ditto File: DefaultConnectionMetricsCounter.java License: Eclipse Public License 2.0 | 5 votes |
/** * Produces a {@link Measurement} for reporting. * * @param success whether to count successful or failed operations * @return a measurement containing the counts for different intervals */ Measurement toMeasurement(final boolean success) { final Map<Duration, Long> measurements = counter.getCounts(success); final Instant lastMessageTimestamp = getLastMessageTimestamp(success); final Instant timestamp; if (lastMessageTimestamp.equals(Instant.EPOCH)) { timestamp = null; } else { timestamp = lastMessageTimestamp; } return ConnectivityModelFactory.newMeasurement(metricType, success, measurements, timestamp); }
Example 5
Source Project: teammates File: TimeHelper.java License: GNU General Public License v2.0 | 5 votes |
/** * Returns whether the given {@code instant} is being used as a special representation, signifying its face value * should not be used without proper processing. * * <p>A {@code null} instant is not a special time.</p> * * @param instant the instant to test * @return {@code true} if the given instant is used as a special representation, {@code false} otherwise */ public static boolean isSpecialTime(Instant instant) { if (instant == null) { return false; } return instant.equals(Const.TIME_REPRESENTS_FOLLOW_OPENING) || instant.equals(Const.TIME_REPRESENTS_FOLLOW_VISIBLE) || instant.equals(Const.TIME_REPRESENTS_LATER) || instant.equals(Const.TIME_REPRESENTS_NOW); }
Example 6
Source Project: openjdk-jdk8u File: RecordedObject.java License: GNU General Public License v2.0 | 5 votes |
OffsetDateTime getOffsetDateTime(String name) { Instant instant = getInstant(name); if (instant.equals(Instant.MIN)) { return OffsetDateTime.MIN; } return OffsetDateTime.ofInstant(getInstant(name), timeConverter.getZoneOffset()); }
Example 7
Source Project: dragonwell8_jdk File: JavatimeTest.java License: GNU General Public License v2.0 | 4 votes |
public static void main(String[] args) throws Throwable { int N = 10000; long t1970 = new java.util.Date(70, 0, 01).getTime(); Random r = new Random(); for (int i = 0; i < N; i++) { int days = r.nextInt(50) * 365 + r.nextInt(365); long secs = t1970 + days * 86400 + r.nextInt(86400); int nanos = r.nextInt(NANOS_PER_SECOND); int nanos_ms = nanos / 1000000 * 1000000; // millis precision long millis = secs * 1000 + r.nextInt(1000); LocalDateTime ldt = LocalDateTime.ofEpochSecond(secs, nanos, ZoneOffset.UTC); LocalDateTime ldt_ms = LocalDateTime.ofEpochSecond(secs, nanos_ms, ZoneOffset.UTC); Instant inst = Instant.ofEpochSecond(secs, nanos); Instant inst_ms = Instant.ofEpochSecond(secs, nanos_ms); //System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); /////////// Timestamp //////////////////////////////// Timestamp ta = new Timestamp(millis); ta.setNanos(nanos); if (!isEqual(ta.toLocalDateTime(), ta)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ta.toLocalDateTime(), ta); throw new RuntimeException("FAILED: j.s.ts -> ldt"); } if (!isEqual(ldt, Timestamp.valueOf(ldt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ldt, Timestamp.valueOf(ldt)); throw new RuntimeException("FAILED: ldt -> j.s.ts"); } Instant inst0 = ta.toInstant(); if (ta.getTime() != inst0.toEpochMilli() || ta.getNanos() != inst0.getNano() || !ta.equals(Timestamp.from(inst0))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: j.s.ts -> instant -> j.s.ts"); } inst = Instant.ofEpochSecond(secs, nanos); Timestamp ta0 = Timestamp.from(inst); if (ta0.getTime() != inst.toEpochMilli() || ta0.getNanos() != inst.getNano() || !inst.equals(ta0.toInstant())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: instant -> timestamp -> instant"); } ////////// java.sql.Date ///////////////////////////// // j.s.d/t uses j.u.d.equals() !!!!!!!! java.sql.Date jsd = new java.sql.Date(millis); if (!isEqual(jsd.toLocalDate(), jsd)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jsd.toLocalDate(), jsd); throw new RuntimeException("FAILED: j.s.d -> ld"); } LocalDate ld = ldt.toLocalDate(); if (!isEqual(ld, java.sql.Date.valueOf(ld))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ld, java.sql.Date.valueOf(ld)); throw new RuntimeException("FAILED: ld -> j.s.d"); } ////////// java.sql.Time ///////////////////////////// java.sql.Time jst = new java.sql.Time(millis); if (!isEqual(jst.toLocalTime(), jst)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jst.toLocalTime(), jst); throw new RuntimeException("FAILED: j.s.t -> lt"); } // millis precision LocalTime lt = ldt_ms.toLocalTime(); if (!isEqual(lt, java.sql.Time.valueOf(lt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(lt, java.sql.Time.valueOf(lt)); throw new RuntimeException("FAILED: lt -> j.s.t"); } } System.out.println("Passed!"); }
Example 8
Source Project: dragonwell8_jdk File: JavatimeTest.java License: GNU General Public License v2.0 | 4 votes |
public static void main(String[] args) throws Throwable { int N = 10000; long t1970 = new java.util.Date(70, 0, 01).getTime(); Random r = new Random(); for (int i = 0; i < N; i++) { int days = r.nextInt(50) * 365 + r.nextInt(365); long secs = t1970 + days * 86400 + r.nextInt(86400); int nanos = r.nextInt(NANOS_PER_SECOND); int nanos_ms = nanos / 1000000 * 1000000; // millis precision long millis = secs * 1000 + r.nextInt(1000); LocalDateTime ldt = LocalDateTime.ofEpochSecond(secs, nanos, ZoneOffset.UTC); LocalDateTime ldt_ms = LocalDateTime.ofEpochSecond(secs, nanos_ms, ZoneOffset.UTC); Instant inst = Instant.ofEpochSecond(secs, nanos); Instant inst_ms = Instant.ofEpochSecond(secs, nanos_ms); ///////////// java.util.Date ///////////////////////// Date jud = new java.util.Date(millis); Instant inst0 = jud.toInstant(); if (jud.getTime() != inst0.toEpochMilli() || !jud.equals(Date.from(inst0))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: j.u.d -> instant -> j.u.d"); } // roundtrip only with millis precision Date jud0 = Date.from(inst_ms); if (jud0.getTime() != inst_ms.toEpochMilli() || !inst_ms.equals(jud0.toInstant())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: instant -> j.u.d -> instant"); } //////////// java.util.GregorianCalendar ///////////// GregorianCalendar cal = new GregorianCalendar(); // non-roundtrip of tz name between j.u.tz and j.t.zid cal.setTimeZone(TimeZone.getTimeZone(ZoneId.systemDefault())); cal.setGregorianChange(new java.util.Date(Long.MIN_VALUE)); cal.setFirstDayOfWeek(Calendar.MONDAY); cal.setMinimalDaysInFirstWeek(4); cal.setTimeInMillis(millis); ZonedDateTime zdt0 = cal.toZonedDateTime(); if (cal.getTimeInMillis() != zdt0.toInstant().toEpochMilli() || !cal.equals(GregorianCalendar.from(zdt0))) { System.out.println("cal:" + cal); System.out.println("zdt:" + zdt0); System.out.println("calNew:" + GregorianCalendar.from(zdt0)); System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: gcal -> zdt -> gcal"); } inst0 = cal.toInstant(); if (cal.getTimeInMillis() != inst0.toEpochMilli()) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: gcal -> zdt"); } ZonedDateTime zdt = ZonedDateTime.of(ldt_ms, ZoneId.systemDefault()); GregorianCalendar cal0 = GregorianCalendar.from(zdt); if (zdt.toInstant().toEpochMilli() != cal0.getTimeInMillis() || !zdt.equals(GregorianCalendar.from(zdt).toZonedDateTime())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: zdt -> gcal -> zdt"); } } ///////////// java.util.TimeZone ///////////////////////// for (String zidStr : TimeZone.getAvailableIDs()) { // TBD: tzdt intergration if (zidStr.startsWith("SystemV") || zidStr.contains("Riyadh8") || zidStr.equals("US/Pacific-New") || zidStr.equals("EST") || zidStr.equals("HST") || zidStr.equals("MST")) { continue; } ZoneId zid = ZoneId.of(zidStr, ZoneId.SHORT_IDS); if (!zid.equals(TimeZone.getTimeZone(zid).toZoneId())) { throw new RuntimeException("FAILED: zid -> tz -> zid :" + zidStr); } TimeZone tz = TimeZone.getTimeZone(zidStr); // no round-trip for alias and "GMT" if (!tz.equals(TimeZone.getTimeZone(tz.toZoneId())) && !ZoneId.SHORT_IDS.containsKey(zidStr) && !zidStr.startsWith("GMT")) { throw new RuntimeException("FAILED: tz -> zid -> tz :" + zidStr); } } System.out.println("Passed!"); }
Example 9
Source Project: jdk8u-dev-jdk File: JavatimeTest.java License: GNU General Public License v2.0 | 4 votes |
public static void main(String[] args) throws Throwable { int N = 10000; long t1970 = new java.util.Date(70, 0, 01).getTime(); Random r = new Random(); for (int i = 0; i < N; i++) { int days = r.nextInt(50) * 365 + r.nextInt(365); long secs = t1970 + days * 86400 + r.nextInt(86400); int nanos = r.nextInt(NANOS_PER_SECOND); int nanos_ms = nanos / 1000000 * 1000000; // millis precision long millis = secs * 1000 + r.nextInt(1000); LocalDateTime ldt = LocalDateTime.ofEpochSecond(secs, nanos, ZoneOffset.UTC); LocalDateTime ldt_ms = LocalDateTime.ofEpochSecond(secs, nanos_ms, ZoneOffset.UTC); Instant inst = Instant.ofEpochSecond(secs, nanos); Instant inst_ms = Instant.ofEpochSecond(secs, nanos_ms); ///////////// java.util.Date ///////////////////////// Date jud = new java.util.Date(millis); Instant inst0 = jud.toInstant(); if (jud.getTime() != inst0.toEpochMilli() || !jud.equals(Date.from(inst0))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: j.u.d -> instant -> j.u.d"); } // roundtrip only with millis precision Date jud0 = Date.from(inst_ms); if (jud0.getTime() != inst_ms.toEpochMilli() || !inst_ms.equals(jud0.toInstant())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: instant -> j.u.d -> instant"); } //////////// java.util.GregorianCalendar ///////////// GregorianCalendar cal = new GregorianCalendar(); // non-roundtrip of tz name between j.u.tz and j.t.zid cal.setTimeZone(TimeZone.getTimeZone(ZoneId.systemDefault())); cal.setGregorianChange(new java.util.Date(Long.MIN_VALUE)); cal.setFirstDayOfWeek(Calendar.MONDAY); cal.setMinimalDaysInFirstWeek(4); cal.setTimeInMillis(millis); ZonedDateTime zdt0 = cal.toZonedDateTime(); if (cal.getTimeInMillis() != zdt0.toInstant().toEpochMilli() || !cal.equals(GregorianCalendar.from(zdt0))) { System.out.println("cal:" + cal); System.out.println("zdt:" + zdt0); System.out.println("calNew:" + GregorianCalendar.from(zdt0)); System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: gcal -> zdt -> gcal"); } inst0 = cal.toInstant(); if (cal.getTimeInMillis() != inst0.toEpochMilli()) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: gcal -> zdt"); } ZonedDateTime zdt = ZonedDateTime.of(ldt_ms, ZoneId.systemDefault()); GregorianCalendar cal0 = GregorianCalendar.from(zdt); if (zdt.toInstant().toEpochMilli() != cal0.getTimeInMillis() || !zdt.equals(GregorianCalendar.from(zdt).toZonedDateTime())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: zdt -> gcal -> zdt"); } } ///////////// java.util.TimeZone ///////////////////////// for (String zidStr : TimeZone.getAvailableIDs()) { // TBD: tzdt intergration if (zidStr.startsWith("SystemV") || zidStr.contains("Riyadh8") || zidStr.equals("US/Pacific-New") || zidStr.equals("EST") || zidStr.equals("HST") || zidStr.equals("MST")) { continue; } ZoneId zid = ZoneId.of(zidStr, ZoneId.SHORT_IDS); if (!zid.equals(TimeZone.getTimeZone(zid).toZoneId())) { throw new RuntimeException("FAILED: zid -> tz -> zid :" + zidStr); } TimeZone tz = TimeZone.getTimeZone(zidStr); // no round-trip for alias and "GMT" if (!tz.equals(TimeZone.getTimeZone(tz.toZoneId())) && !ZoneId.SHORT_IDS.containsKey(zidStr) && !zidStr.startsWith("GMT")) { throw new RuntimeException("FAILED: tz -> zid -> tz :" + zidStr); } } System.out.println("Passed!"); }
Example 10
Source Project: teammates File: GetFeedbackSessionsActionTest.java License: GNU General Public License v2.0 | 4 votes |
private void assertAllInformationMatch(FeedbackSessionData data, FeedbackSessionAttributes expectedSession) { assertEquals(expectedSession.getCourseId(), data.getCourseId()); assertEquals(expectedSession.getTimeZone().getId(), data.getTimeZone()); assertEquals(expectedSession.getFeedbackSessionName(), data.getFeedbackSessionName()); assertEquals(expectedSession.getInstructions(), data.getInstructions()); assertEquals(expectedSession.getStartTime().toEpochMilli(), data.getSubmissionStartTimestamp()); assertEquals(expectedSession.getEndTime().toEpochMilli(), data.getSubmissionEndTimestamp()); assertEquals(expectedSession.getGracePeriodMinutes(), data.getGracePeriod().longValue()); Instant sessionVisibleTime = expectedSession.getSessionVisibleFromTime(); if (sessionVisibleTime.equals(Const.TIME_REPRESENTS_FOLLOW_OPENING)) { assertEquals(data.getSessionVisibleSetting(), SessionVisibleSetting.AT_OPEN); } else { assertEquals(data.getSessionVisibleSetting(), SessionVisibleSetting.CUSTOM); assertEquals(sessionVisibleTime.toEpochMilli(), data.getCustomSessionVisibleTimestamp().longValue()); } Instant responseVisibleTime = expectedSession.getResultsVisibleFromTime(); if (responseVisibleTime.equals(Const.TIME_REPRESENTS_FOLLOW_VISIBLE)) { assertEquals(ResponseVisibleSetting.AT_VISIBLE, data.getResponseVisibleSetting()); } else if (responseVisibleTime.equals(Const.TIME_REPRESENTS_LATER)) { assertEquals(ResponseVisibleSetting.LATER, data.getResponseVisibleSetting()); } else { assertEquals(ResponseVisibleSetting.CUSTOM, data.getResponseVisibleSetting()); assertEquals(responseVisibleTime.toEpochMilli(), data.getCustomResponseVisibleTimestamp().longValue()); } if (!expectedSession.isVisible()) { assertEquals(FeedbackSessionSubmissionStatus.NOT_VISIBLE, data.getSubmissionStatus()); } else if (expectedSession.isOpened()) { assertEquals(FeedbackSessionSubmissionStatus.OPEN, data.getSubmissionStatus()); } else if (expectedSession.isClosed()) { assertEquals(FeedbackSessionSubmissionStatus.CLOSED, data.getSubmissionStatus()); } else if (expectedSession.isInGracePeriod()) { assertEquals(FeedbackSessionSubmissionStatus.GRACE_PERIOD, data.getSubmissionStatus()); } else if (expectedSession.isVisible() && !expectedSession.isOpened()) { assertEquals(FeedbackSessionSubmissionStatus.VISIBLE_NOT_OPEN, data.getSubmissionStatus()); } if (expectedSession.isPublished()) { assertEquals(FeedbackSessionPublishStatus.PUBLISHED, data.getPublishStatus()); } else { assertEquals(FeedbackSessionPublishStatus.NOT_PUBLISHED, data.getPublishStatus()); } assertEquals(expectedSession.isClosingEmailEnabled(), data.getIsClosingEmailEnabled()); assertEquals(expectedSession.isPublishedEmailEnabled(), data.getIsPublishedEmailEnabled()); assertEquals(expectedSession.getCreatedTime().toEpochMilli(), data.getCreatedAtTimestamp()); if (expectedSession.getDeletedTime() == null) { assertNull(data.getDeletedAtTimestamp()); } else { assertEquals(expectedSession.getDeletedTime().toEpochMilli(), data.getDeletedAtTimestamp().longValue()); } }
Example 11
Source Project: TencentKona-8 File: JavatimeTest.java License: GNU General Public License v2.0 | 4 votes |
public static void main(String[] args) throws Throwable { int N = 10000; long t1970 = new java.util.Date(70, 0, 01).getTime(); Random r = new Random(); for (int i = 0; i < N; i++) { int days = r.nextInt(50) * 365 + r.nextInt(365); long secs = t1970 + days * 86400 + r.nextInt(86400); int nanos = r.nextInt(NANOS_PER_SECOND); int nanos_ms = nanos / 1000000 * 1000000; // millis precision long millis = secs * 1000 + r.nextInt(1000); LocalDateTime ldt = LocalDateTime.ofEpochSecond(secs, nanos, ZoneOffset.UTC); LocalDateTime ldt_ms = LocalDateTime.ofEpochSecond(secs, nanos_ms, ZoneOffset.UTC); Instant inst = Instant.ofEpochSecond(secs, nanos); Instant inst_ms = Instant.ofEpochSecond(secs, nanos_ms); //System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); /////////// Timestamp //////////////////////////////// Timestamp ta = new Timestamp(millis); ta.setNanos(nanos); if (!isEqual(ta.toLocalDateTime(), ta)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ta.toLocalDateTime(), ta); throw new RuntimeException("FAILED: j.s.ts -> ldt"); } if (!isEqual(ldt, Timestamp.valueOf(ldt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ldt, Timestamp.valueOf(ldt)); throw new RuntimeException("FAILED: ldt -> j.s.ts"); } Instant inst0 = ta.toInstant(); if (ta.getTime() != inst0.toEpochMilli() || ta.getNanos() != inst0.getNano() || !ta.equals(Timestamp.from(inst0))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: j.s.ts -> instant -> j.s.ts"); } inst = Instant.ofEpochSecond(secs, nanos); Timestamp ta0 = Timestamp.from(inst); if (ta0.getTime() != inst.toEpochMilli() || ta0.getNanos() != inst.getNano() || !inst.equals(ta0.toInstant())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: instant -> timestamp -> instant"); } ////////// java.sql.Date ///////////////////////////// // j.s.d/t uses j.u.d.equals() !!!!!!!! java.sql.Date jsd = new java.sql.Date(millis); if (!isEqual(jsd.toLocalDate(), jsd)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jsd.toLocalDate(), jsd); throw new RuntimeException("FAILED: j.s.d -> ld"); } LocalDate ld = ldt.toLocalDate(); if (!isEqual(ld, java.sql.Date.valueOf(ld))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ld, java.sql.Date.valueOf(ld)); throw new RuntimeException("FAILED: ld -> j.s.d"); } ////////// java.sql.Time ///////////////////////////// java.sql.Time jst = new java.sql.Time(millis); if (!isEqual(jst.toLocalTime(), jst)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jst.toLocalTime(), jst); throw new RuntimeException("FAILED: j.s.t -> lt"); } // millis precision LocalTime lt = ldt_ms.toLocalTime(); if (!isEqual(lt, java.sql.Time.valueOf(lt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(lt, java.sql.Time.valueOf(lt)); throw new RuntimeException("FAILED: lt -> j.s.t"); } } System.out.println("Passed!"); }
Example 12
Source Project: jdk8u_jdk File: JavatimeTest.java License: GNU General Public License v2.0 | 4 votes |
public static void main(String[] args) throws Throwable { int N = 10000; long t1970 = new java.util.Date(70, 0, 01).getTime(); Random r = new Random(); for (int i = 0; i < N; i++) { int days = r.nextInt(50) * 365 + r.nextInt(365); long secs = t1970 + days * 86400 + r.nextInt(86400); int nanos = r.nextInt(NANOS_PER_SECOND); int nanos_ms = nanos / 1000000 * 1000000; // millis precision long millis = secs * 1000 + r.nextInt(1000); LocalDateTime ldt = LocalDateTime.ofEpochSecond(secs, nanos, ZoneOffset.UTC); LocalDateTime ldt_ms = LocalDateTime.ofEpochSecond(secs, nanos_ms, ZoneOffset.UTC); Instant inst = Instant.ofEpochSecond(secs, nanos); Instant inst_ms = Instant.ofEpochSecond(secs, nanos_ms); ///////////// java.util.Date ///////////////////////// Date jud = new java.util.Date(millis); Instant inst0 = jud.toInstant(); if (jud.getTime() != inst0.toEpochMilli() || !jud.equals(Date.from(inst0))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: j.u.d -> instant -> j.u.d"); } // roundtrip only with millis precision Date jud0 = Date.from(inst_ms); if (jud0.getTime() != inst_ms.toEpochMilli() || !inst_ms.equals(jud0.toInstant())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: instant -> j.u.d -> instant"); } //////////// java.util.GregorianCalendar ///////////// GregorianCalendar cal = new GregorianCalendar(); // non-roundtrip of tz name between j.u.tz and j.t.zid cal.setTimeZone(TimeZone.getTimeZone(ZoneId.systemDefault())); cal.setGregorianChange(new java.util.Date(Long.MIN_VALUE)); cal.setFirstDayOfWeek(Calendar.MONDAY); cal.setMinimalDaysInFirstWeek(4); cal.setTimeInMillis(millis); ZonedDateTime zdt0 = cal.toZonedDateTime(); if (cal.getTimeInMillis() != zdt0.toInstant().toEpochMilli() || !cal.equals(GregorianCalendar.from(zdt0))) { System.out.println("cal:" + cal); System.out.println("zdt:" + zdt0); System.out.println("calNew:" + GregorianCalendar.from(zdt0)); System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: gcal -> zdt -> gcal"); } inst0 = cal.toInstant(); if (cal.getTimeInMillis() != inst0.toEpochMilli()) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: gcal -> zdt"); } ZonedDateTime zdt = ZonedDateTime.of(ldt_ms, ZoneId.systemDefault()); GregorianCalendar cal0 = GregorianCalendar.from(zdt); if (zdt.toInstant().toEpochMilli() != cal0.getTimeInMillis() || !zdt.equals(GregorianCalendar.from(zdt).toZonedDateTime())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: zdt -> gcal -> zdt"); } } ///////////// java.util.TimeZone ///////////////////////// for (String zidStr : TimeZone.getAvailableIDs()) { // TBD: tzdt intergration if (zidStr.startsWith("SystemV") || zidStr.contains("Riyadh8") || zidStr.equals("US/Pacific-New") || zidStr.equals("EST") || zidStr.equals("HST") || zidStr.equals("MST")) { continue; } ZoneId zid = ZoneId.of(zidStr, ZoneId.SHORT_IDS); if (!zid.equals(TimeZone.getTimeZone(zid).toZoneId())) { throw new RuntimeException("FAILED: zid -> tz -> zid :" + zidStr); } TimeZone tz = TimeZone.getTimeZone(zidStr); // no round-trip for alias and "GMT" if (!tz.equals(TimeZone.getTimeZone(tz.toZoneId())) && !ZoneId.SHORT_IDS.containsKey(zidStr) && !zidStr.startsWith("GMT")) { throw new RuntimeException("FAILED: tz -> zid -> tz :" + zidStr); } } System.out.println("Passed!"); }
Example 13
Source Project: openjdk-jdk9 File: JavatimeTest.java License: GNU General Public License v2.0 | 4 votes |
public static void main(String[] args) throws Throwable { int N = 10000; long t1970 = new java.util.Date(70, 0, 01).getTime(); Random r = new Random(); for (int i = 0; i < N; i++) { int days = r.nextInt(50) * 365 + r.nextInt(365); long secs = t1970 + days * 86400 + r.nextInt(86400); int nanos = r.nextInt(NANOS_PER_SECOND); int nanos_ms = nanos / 1000000 * 1000000; // millis precision long millis = secs * 1000 + r.nextInt(1000); LocalDateTime ldt = LocalDateTime.ofEpochSecond(secs, nanos, ZoneOffset.UTC); LocalDateTime ldt_ms = LocalDateTime.ofEpochSecond(secs, nanos_ms, ZoneOffset.UTC); Instant inst = Instant.ofEpochSecond(secs, nanos); Instant inst_ms = Instant.ofEpochSecond(secs, nanos_ms); //System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); /////////// Timestamp //////////////////////////////// Timestamp ta = new Timestamp(millis); ta.setNanos(nanos); if (!isEqual(ta.toLocalDateTime(), ta)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ta.toLocalDateTime(), ta); throw new RuntimeException("FAILED: j.s.ts -> ldt"); } if (!isEqual(ldt, Timestamp.valueOf(ldt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ldt, Timestamp.valueOf(ldt)); throw new RuntimeException("FAILED: ldt -> j.s.ts"); } Instant inst0 = ta.toInstant(); if (ta.getTime() != inst0.toEpochMilli() || ta.getNanos() != inst0.getNano() || !ta.equals(Timestamp.from(inst0))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: j.s.ts -> instant -> j.s.ts"); } inst = Instant.ofEpochSecond(secs, nanos); Timestamp ta0 = Timestamp.from(inst); if (ta0.getTime() != inst.toEpochMilli() || ta0.getNanos() != inst.getNano() || !inst.equals(ta0.toInstant())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: instant -> timestamp -> instant"); } ////////// java.sql.Date ///////////////////////////// // j.s.d/t uses j.u.d.equals() !!!!!!!! java.sql.Date jsd = new java.sql.Date(millis); if (!isEqual(jsd.toLocalDate(), jsd)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jsd.toLocalDate(), jsd); throw new RuntimeException("FAILED: j.s.d -> ld"); } LocalDate ld = ldt.toLocalDate(); if (!isEqual(ld, java.sql.Date.valueOf(ld))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ld, java.sql.Date.valueOf(ld)); throw new RuntimeException("FAILED: ld -> j.s.d"); } ////////// java.sql.Time ///////////////////////////// java.sql.Time jst = new java.sql.Time(millis); if (!isEqual(jst.toLocalTime(), jst)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jst.toLocalTime(), jst); throw new RuntimeException("FAILED: j.s.t -> lt"); } // millis precision LocalTime lt = ldt_ms.toLocalTime(); if (!isEqual(lt, java.sql.Time.valueOf(lt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(lt, java.sql.Time.valueOf(lt)); throw new RuntimeException("FAILED: lt -> j.s.t"); } } System.out.println("Passed!"); }
Example 14
Source Project: openjdk-8 File: JavatimeTest.java License: GNU General Public License v2.0 | 4 votes |
public static void main(String[] args) throws Throwable { int N = 10000; long t1970 = new java.util.Date(70, 0, 01).getTime(); Random r = new Random(); for (int i = 0; i < N; i++) { int days = r.nextInt(50) * 365 + r.nextInt(365); long secs = t1970 + days * 86400 + r.nextInt(86400); int nanos = r.nextInt(NANOS_PER_SECOND); int nanos_ms = nanos / 1000000 * 1000000; // millis precision long millis = secs * 1000 + r.nextInt(1000); LocalDateTime ldt = LocalDateTime.ofEpochSecond(secs, nanos, ZoneOffset.UTC); LocalDateTime ldt_ms = LocalDateTime.ofEpochSecond(secs, nanos_ms, ZoneOffset.UTC); Instant inst = Instant.ofEpochSecond(secs, nanos); Instant inst_ms = Instant.ofEpochSecond(secs, nanos_ms); //System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); /////////// Timestamp //////////////////////////////// Timestamp ta = new Timestamp(millis); ta.setNanos(nanos); if (!isEqual(ta.toLocalDateTime(), ta)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ta.toLocalDateTime(), ta); throw new RuntimeException("FAILED: j.s.ts -> ldt"); } if (!isEqual(ldt, Timestamp.valueOf(ldt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ldt, Timestamp.valueOf(ldt)); throw new RuntimeException("FAILED: ldt -> j.s.ts"); } Instant inst0 = ta.toInstant(); if (ta.getTime() != inst0.toEpochMilli() || ta.getNanos() != inst0.getNano() || !ta.equals(Timestamp.from(inst0))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: j.s.ts -> instant -> j.s.ts"); } inst = Instant.ofEpochSecond(secs, nanos); Timestamp ta0 = Timestamp.from(inst); if (ta0.getTime() != inst.toEpochMilli() || ta0.getNanos() != inst.getNano() || !inst.equals(ta0.toInstant())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: instant -> timestamp -> instant"); } ////////// java.sql.Date ///////////////////////////// // j.s.d/t uses j.u.d.equals() !!!!!!!! java.sql.Date jsd = new java.sql.Date(millis); if (!isEqual(jsd.toLocalDate(), jsd)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jsd.toLocalDate(), jsd); throw new RuntimeException("FAILED: j.s.d -> ld"); } LocalDate ld = ldt.toLocalDate(); if (!isEqual(ld, java.sql.Date.valueOf(ld))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ld, java.sql.Date.valueOf(ld)); throw new RuntimeException("FAILED: ld -> j.s.d"); } ////////// java.sql.Time ///////////////////////////// java.sql.Time jst = new java.sql.Time(millis); if (!isEqual(jst.toLocalTime(), jst)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jst.toLocalTime(), jst); throw new RuntimeException("FAILED: j.s.t -> lt"); } // millis precision LocalTime lt = ldt_ms.toLocalTime(); if (!isEqual(lt, java.sql.Time.valueOf(lt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(lt, java.sql.Time.valueOf(lt)); throw new RuntimeException("FAILED: lt -> j.s.t"); } } System.out.println("Passed!"); }
Example 15
Source Project: openjdk-jdk8u-backup File: JavatimeTest.java License: GNU General Public License v2.0 | 4 votes |
public static void main(String[] args) throws Throwable { int N = 10000; long t1970 = new java.util.Date(70, 0, 01).getTime(); Random r = new Random(); for (int i = 0; i < N; i++) { int days = r.nextInt(50) * 365 + r.nextInt(365); long secs = t1970 + days * 86400 + r.nextInt(86400); int nanos = r.nextInt(NANOS_PER_SECOND); int nanos_ms = nanos / 1000000 * 1000000; // millis precision long millis = secs * 1000 + r.nextInt(1000); LocalDateTime ldt = LocalDateTime.ofEpochSecond(secs, nanos, ZoneOffset.UTC); LocalDateTime ldt_ms = LocalDateTime.ofEpochSecond(secs, nanos_ms, ZoneOffset.UTC); Instant inst = Instant.ofEpochSecond(secs, nanos); Instant inst_ms = Instant.ofEpochSecond(secs, nanos_ms); ///////////// java.util.Date ///////////////////////// Date jud = new java.util.Date(millis); Instant inst0 = jud.toInstant(); if (jud.getTime() != inst0.toEpochMilli() || !jud.equals(Date.from(inst0))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: j.u.d -> instant -> j.u.d"); } // roundtrip only with millis precision Date jud0 = Date.from(inst_ms); if (jud0.getTime() != inst_ms.toEpochMilli() || !inst_ms.equals(jud0.toInstant())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: instant -> j.u.d -> instant"); } //////////// java.util.GregorianCalendar ///////////// GregorianCalendar cal = new GregorianCalendar(); // non-roundtrip of tz name between j.u.tz and j.t.zid cal.setTimeZone(TimeZone.getTimeZone(ZoneId.systemDefault())); cal.setGregorianChange(new java.util.Date(Long.MIN_VALUE)); cal.setFirstDayOfWeek(Calendar.MONDAY); cal.setMinimalDaysInFirstWeek(4); cal.setTimeInMillis(millis); ZonedDateTime zdt0 = cal.toZonedDateTime(); if (cal.getTimeInMillis() != zdt0.toInstant().toEpochMilli() || !cal.equals(GregorianCalendar.from(zdt0))) { System.out.println("cal:" + cal); System.out.println("zdt:" + zdt0); System.out.println("calNew:" + GregorianCalendar.from(zdt0)); System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: gcal -> zdt -> gcal"); } inst0 = cal.toInstant(); if (cal.getTimeInMillis() != inst0.toEpochMilli()) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: gcal -> zdt"); } ZonedDateTime zdt = ZonedDateTime.of(ldt_ms, ZoneId.systemDefault()); GregorianCalendar cal0 = GregorianCalendar.from(zdt); if (zdt.toInstant().toEpochMilli() != cal0.getTimeInMillis() || !zdt.equals(GregorianCalendar.from(zdt).toZonedDateTime())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: zdt -> gcal -> zdt"); } } ///////////// java.util.TimeZone ///////////////////////// for (String zidStr : TimeZone.getAvailableIDs()) { // TBD: tzdt intergration if (zidStr.startsWith("SystemV") || zidStr.contains("Riyadh8") || zidStr.equals("US/Pacific-New") || zidStr.equals("EST") || zidStr.equals("HST") || zidStr.equals("MST")) { continue; } ZoneId zid = ZoneId.of(zidStr, ZoneId.SHORT_IDS); if (!zid.equals(TimeZone.getTimeZone(zid).toZoneId())) { throw new RuntimeException("FAILED: zid -> tz -> zid :" + zidStr); } TimeZone tz = TimeZone.getTimeZone(zidStr); // no round-trip for alias and "GMT" if (!tz.equals(TimeZone.getTimeZone(tz.toZoneId())) && !ZoneId.SHORT_IDS.containsKey(zidStr) && !zidStr.startsWith("GMT")) { throw new RuntimeException("FAILED: tz -> zid -> tz :" + zidStr); } } System.out.println("Passed!"); }
Example 16
Source Project: openjdk-8-source File: JavatimeTest.java License: GNU General Public License v2.0 | 4 votes |
public static void main(String[] args) throws Throwable { int N = 10000; long t1970 = new java.util.Date(70, 0, 01).getTime(); Random r = new Random(); for (int i = 0; i < N; i++) { int days = r.nextInt(50) * 365 + r.nextInt(365); long secs = t1970 + days * 86400 + r.nextInt(86400); int nanos = r.nextInt(NANOS_PER_SECOND); int nanos_ms = nanos / 1000000 * 1000000; // millis precision long millis = secs * 1000 + r.nextInt(1000); LocalDateTime ldt = LocalDateTime.ofEpochSecond(secs, nanos, ZoneOffset.UTC); LocalDateTime ldt_ms = LocalDateTime.ofEpochSecond(secs, nanos_ms, ZoneOffset.UTC); Instant inst = Instant.ofEpochSecond(secs, nanos); Instant inst_ms = Instant.ofEpochSecond(secs, nanos_ms); //System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); /////////// Timestamp //////////////////////////////// Timestamp ta = new Timestamp(millis); ta.setNanos(nanos); if (!isEqual(ta.toLocalDateTime(), ta)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ta.toLocalDateTime(), ta); throw new RuntimeException("FAILED: j.s.ts -> ldt"); } if (!isEqual(ldt, Timestamp.valueOf(ldt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ldt, Timestamp.valueOf(ldt)); throw new RuntimeException("FAILED: ldt -> j.s.ts"); } Instant inst0 = ta.toInstant(); if (ta.getTime() != inst0.toEpochMilli() || ta.getNanos() != inst0.getNano() || !ta.equals(Timestamp.from(inst0))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: j.s.ts -> instant -> j.s.ts"); } inst = Instant.ofEpochSecond(secs, nanos); Timestamp ta0 = Timestamp.from(inst); if (ta0.getTime() != inst.toEpochMilli() || ta0.getNanos() != inst.getNano() || !inst.equals(ta0.toInstant())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: instant -> timestamp -> instant"); } ////////// java.sql.Date ///////////////////////////// // j.s.d/t uses j.u.d.equals() !!!!!!!! java.sql.Date jsd = new java.sql.Date(millis); if (!isEqual(jsd.toLocalDate(), jsd)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jsd.toLocalDate(), jsd); throw new RuntimeException("FAILED: j.s.d -> ld"); } LocalDate ld = ldt.toLocalDate(); if (!isEqual(ld, java.sql.Date.valueOf(ld))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ld, java.sql.Date.valueOf(ld)); throw new RuntimeException("FAILED: ld -> j.s.d"); } ////////// java.sql.Time ///////////////////////////// java.sql.Time jst = new java.sql.Time(millis); if (!isEqual(jst.toLocalTime(), jst)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jst.toLocalTime(), jst); throw new RuntimeException("FAILED: j.s.t -> lt"); } // millis precision LocalTime lt = ldt_ms.toLocalTime(); if (!isEqual(lt, java.sql.Time.valueOf(lt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(lt, java.sql.Time.valueOf(lt)); throw new RuntimeException("FAILED: lt -> j.s.t"); } } System.out.println("Passed!"); }
Example 17
Source Project: hottub File: JavatimeTest.java License: GNU General Public License v2.0 | 4 votes |
public static void main(String[] args) throws Throwable { int N = 10000; long t1970 = new java.util.Date(70, 0, 01).getTime(); Random r = new Random(); for (int i = 0; i < N; i++) { int days = r.nextInt(50) * 365 + r.nextInt(365); long secs = t1970 + days * 86400 + r.nextInt(86400); int nanos = r.nextInt(NANOS_PER_SECOND); int nanos_ms = nanos / 1000000 * 1000000; // millis precision long millis = secs * 1000 + r.nextInt(1000); LocalDateTime ldt = LocalDateTime.ofEpochSecond(secs, nanos, ZoneOffset.UTC); LocalDateTime ldt_ms = LocalDateTime.ofEpochSecond(secs, nanos_ms, ZoneOffset.UTC); Instant inst = Instant.ofEpochSecond(secs, nanos); Instant inst_ms = Instant.ofEpochSecond(secs, nanos_ms); //System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); /////////// Timestamp //////////////////////////////// Timestamp ta = new Timestamp(millis); ta.setNanos(nanos); if (!isEqual(ta.toLocalDateTime(), ta)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ta.toLocalDateTime(), ta); throw new RuntimeException("FAILED: j.s.ts -> ldt"); } if (!isEqual(ldt, Timestamp.valueOf(ldt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ldt, Timestamp.valueOf(ldt)); throw new RuntimeException("FAILED: ldt -> j.s.ts"); } Instant inst0 = ta.toInstant(); if (ta.getTime() != inst0.toEpochMilli() || ta.getNanos() != inst0.getNano() || !ta.equals(Timestamp.from(inst0))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: j.s.ts -> instant -> j.s.ts"); } inst = Instant.ofEpochSecond(secs, nanos); Timestamp ta0 = Timestamp.from(inst); if (ta0.getTime() != inst.toEpochMilli() || ta0.getNanos() != inst.getNano() || !inst.equals(ta0.toInstant())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: instant -> timestamp -> instant"); } ////////// java.sql.Date ///////////////////////////// // j.s.d/t uses j.u.d.equals() !!!!!!!! java.sql.Date jsd = new java.sql.Date(millis); if (!isEqual(jsd.toLocalDate(), jsd)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jsd.toLocalDate(), jsd); throw new RuntimeException("FAILED: j.s.d -> ld"); } LocalDate ld = ldt.toLocalDate(); if (!isEqual(ld, java.sql.Date.valueOf(ld))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ld, java.sql.Date.valueOf(ld)); throw new RuntimeException("FAILED: ld -> j.s.d"); } ////////// java.sql.Time ///////////////////////////// java.sql.Time jst = new java.sql.Time(millis); if (!isEqual(jst.toLocalTime(), jst)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jst.toLocalTime(), jst); throw new RuntimeException("FAILED: j.s.t -> lt"); } // millis precision LocalTime lt = ldt_ms.toLocalTime(); if (!isEqual(lt, java.sql.Time.valueOf(lt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(lt, java.sql.Time.valueOf(lt)); throw new RuntimeException("FAILED: lt -> j.s.t"); } } System.out.println("Passed!"); }
Example 18
Source Project: openjdk-jdk8u-backup File: JavatimeTest.java License: GNU General Public License v2.0 | 4 votes |
public static void main(String[] args) throws Throwable { int N = 10000; long t1970 = new java.util.Date(70, 0, 01).getTime(); Random r = new Random(); for (int i = 0; i < N; i++) { int days = r.nextInt(50) * 365 + r.nextInt(365); long secs = t1970 + days * 86400 + r.nextInt(86400); int nanos = r.nextInt(NANOS_PER_SECOND); int nanos_ms = nanos / 1000000 * 1000000; // millis precision long millis = secs * 1000 + r.nextInt(1000); LocalDateTime ldt = LocalDateTime.ofEpochSecond(secs, nanos, ZoneOffset.UTC); LocalDateTime ldt_ms = LocalDateTime.ofEpochSecond(secs, nanos_ms, ZoneOffset.UTC); Instant inst = Instant.ofEpochSecond(secs, nanos); Instant inst_ms = Instant.ofEpochSecond(secs, nanos_ms); //System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); /////////// Timestamp //////////////////////////////// Timestamp ta = new Timestamp(millis); ta.setNanos(nanos); if (!isEqual(ta.toLocalDateTime(), ta)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ta.toLocalDateTime(), ta); throw new RuntimeException("FAILED: j.s.ts -> ldt"); } if (!isEqual(ldt, Timestamp.valueOf(ldt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ldt, Timestamp.valueOf(ldt)); throw new RuntimeException("FAILED: ldt -> j.s.ts"); } Instant inst0 = ta.toInstant(); if (ta.getTime() != inst0.toEpochMilli() || ta.getNanos() != inst0.getNano() || !ta.equals(Timestamp.from(inst0))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: j.s.ts -> instant -> j.s.ts"); } inst = Instant.ofEpochSecond(secs, nanos); Timestamp ta0 = Timestamp.from(inst); if (ta0.getTime() != inst.toEpochMilli() || ta0.getNanos() != inst.getNano() || !inst.equals(ta0.toInstant())) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); throw new RuntimeException("FAILED: instant -> timestamp -> instant"); } ////////// java.sql.Date ///////////////////////////// // j.s.d/t uses j.u.d.equals() !!!!!!!! java.sql.Date jsd = new java.sql.Date(millis); if (!isEqual(jsd.toLocalDate(), jsd)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jsd.toLocalDate(), jsd); throw new RuntimeException("FAILED: j.s.d -> ld"); } LocalDate ld = ldt.toLocalDate(); if (!isEqual(ld, java.sql.Date.valueOf(ld))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(ld, java.sql.Date.valueOf(ld)); throw new RuntimeException("FAILED: ld -> j.s.d"); } ////////// java.sql.Time ///////////////////////////// java.sql.Time jst = new java.sql.Time(millis); if (!isEqual(jst.toLocalTime(), jst)) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(jst.toLocalTime(), jst); throw new RuntimeException("FAILED: j.s.t -> lt"); } // millis precision LocalTime lt = ldt_ms.toLocalTime(); if (!isEqual(lt, java.sql.Time.valueOf(lt))) { System.out.printf("ms: %16d ns: %10d ldt:[%s]%n", millis, nanos, ldt); print(lt, java.sql.Time.valueOf(lt)); throw new RuntimeException("FAILED: lt -> j.s.t"); } } System.out.println("Passed!"); }
Example 19
Source Project: teammates File: FeedbackSessionAttributes.java License: GNU General Public License v2.0 | 2 votes |
@Override public List<String> getInvalidityInfo() { List<String> errors = new ArrayList<>(); // Check for null fields. addNonEmptyError(FieldValidator.getValidityInfoForNonNullField( FieldValidator.FEEDBACK_SESSION_NAME_FIELD_NAME, feedbackSessionName), errors); addNonEmptyError(FieldValidator.getValidityInfoForNonNullField( FieldValidator.COURSE_ID_FIELD_NAME, courseId), errors); addNonEmptyError(FieldValidator.getValidityInfoForNonNullField("instructions to students", instructions), errors); addNonEmptyError(FieldValidator.getValidityInfoForNonNullField( "time for the session to become visible", sessionVisibleFromTime), errors); addNonEmptyError(FieldValidator.getValidityInfoForNonNullField("session time zone", timeZone), errors); addNonEmptyError(FieldValidator.getValidityInfoForNonNullField("creator's email", creatorEmail), errors); addNonEmptyError(FieldValidator.getValidityInfoForNonNullField("session creation time", createdTime), errors); // Early return if any null fields if (!errors.isEmpty()) { return errors; } addNonEmptyError(FieldValidator.getInvalidityInfoForFeedbackSessionName(feedbackSessionName), errors); addNonEmptyError(FieldValidator.getInvalidityInfoForCourseId(courseId), errors); addNonEmptyError(FieldValidator.getInvalidityInfoForEmail(creatorEmail), errors); addNonEmptyError(FieldValidator.getInvalidityInfoForGracePeriod(gracePeriod), errors); addNonEmptyError(FieldValidator.getValidityInfoForNonNullField("submission opening time", startTime), errors); addNonEmptyError(FieldValidator.getValidityInfoForNonNullField("submission closing time", endTime), errors); addNonEmptyError(FieldValidator.getValidityInfoForNonNullField( "time for the responses to become visible", resultsVisibleFromTime), errors); // Early return if any null fields if (!errors.isEmpty()) { return errors; } addNonEmptyError(FieldValidator.getInvalidityInfoForTimeForSessionStartAndEnd(startTime, endTime), errors); addNonEmptyError(FieldValidator.getInvalidityInfoForTimeForVisibilityStartAndSessionStart( sessionVisibleFromTime, startTime), errors); Instant actualSessionVisibleFromTime = sessionVisibleFromTime; if (actualSessionVisibleFromTime.equals(Const.TIME_REPRESENTS_FOLLOW_OPENING)) { actualSessionVisibleFromTime = startTime; } addNonEmptyError(FieldValidator.getInvalidityInfoForTimeForVisibilityStartAndResultsPublish( actualSessionVisibleFromTime, resultsVisibleFromTime), errors); return errors; }
Example 20
Source Project: concursus File: TimeRangeBound.java License: MIT License | 2 votes |
/** * Is the supplied {@link Instant} within the upper bound represented by this object? * @param instant The {@link Instant} to test. * @return True of the supplied {@link Instant} is within the upper bound represented by this object, false otherwise. */ public boolean containsUpper(Instant instant) { return instant.isBefore(this.instant) || instant.equals(this.instant) && isInclusive; }