### Question:
Time extends TimeBase<Time> { public static Time fromNano(long nano) { return new Time(nano); } Time();  Time(int secs, int nsecs);  Time(double sec);  Time(long nano); @Override Time add(Time t); @Override Time subtract(Time t); boolean isValid(); Date toDate(); static boolean sleepUntil(Time t); @Override Time clone(); static Time now(); static Time fromSec(double sec); static Time fromNano(long nano); static Time fromDate(Date date); static Time fromJsonString(String jsonString); static Time fromJsonObject(JsonObject jsonObject); static final String TYPE; }### Answer:
@Test public void testFromNano() { Time t = Time.fromNano(10200000000l); assertEquals(10, t.secs); assertEquals(200000000, t.nsecs); assertEquals(10, t.getSecs()); assertEquals(200000000, t.getNsecs()); assertFalse(t.isZero()); assertEquals(10.2, t.toSec(), 0); assertEquals(10200000000l, t.toNSec()); assertEquals("{\"secs\":10,\"nsecs\":200000000}", t.toString()); assertEquals(2, t.toJsonObject().size()); assertEquals(10, t.toJsonObject().getInt(TimeBase.FIELD_SECS)); assertEquals(200000000, t.toJsonObject().getInt(TimeBase.FIELD_NSECS)); assertEquals(Time.TYPE, t.getPrimitiveType()); }