NanosWithSeqNumTimeModel implements TimeModel, ProvidesAlias { @Override public Row setFarFutureTime(Row row) { row = RowUtils.set(row, nanoField.name(), farFuture); row = RowUtils.set(row, seqNumField.name(), firstSeqNum); return row; }  @Override void configure(Config config); @Override void configureFieldNames(List<String> fieldNames); @Override void configureCurrentSystemTime(long currentSystemTimeMillis); @Override int compare(Row first, Row second); @Override StructType getSchema(); @Override Row setFarFutureTime(Row row); @Override Row setCurrentSystemTime(Row row); @Override Row setPrecedingSystemTime(Row row); @Override Row appendFields(Row row); @Override Row getTime(Row row); @Override Row getPrecedingTime(Row row); @Override String getAlias();  }
@Test public void testFarFuture() { Row ff = tm.setFarFutureTime(first); assertTrue(ff.<BigDecimal>getAs(nanoField.name()).compareTo(new BigDecimal("4102444800000000000")) > 0); }