### Question:
TimeBase extends Primitive implements
		Comparable<TimeBase<T>> { @Override public int compareTo(TimeBase<T> t) { return Double.compare(this.toSec(), t.toSec()); } TimeBase(String type);  TimeBase(double sec, String type);  TimeBase(long nano, String type);  TimeBase(int secs, int nsecs, String type); int getSecs(); int getNsecs(); boolean isZero(); double toSec(); long toNSec(); @Override int compareTo(TimeBase<T> t); abstract T add(T t); abstract T subtract(T t); @Override abstract T clone(); static final String FIELD_SECS; static final String FIELD_NSECS; final int secs; }### Answer:
@Test public void testCompareTo() { assertEquals(0, t1.compareTo(t1)); assertEquals(0, t2.compareTo(t2)); assertEquals(0, t3.compareTo(t3)); assertEquals(0, t4.compareTo(t4)); assertFalse(greaterThan(t1.compareTo(t2), 0)); assertTrue(greaterThan(t4.compareTo(t1), 0)); }