Methods Summary |
---|
public static void | main(java.lang.String[] args)
junit.textui.TestRunner.run(suite());
|
public static junit.framework.Test | suite()
return new TestSuite(SystemTest.class);
|
public void | testNanoTime1()Nanos between readings of millis is no longer than millis (plus
possible rounding).
This shows only that nano timing not (much) worse than milli.
try {
long m1 = System.currentTimeMillis();
Thread.sleep(1);
long n1 = System.nanoTime();
Thread.sleep(SHORT_DELAY_MS);
long n2 = System.nanoTime();
Thread.sleep(1);
long m2 = System.currentTimeMillis();
long millis = m2 - m1;
long nanos = n2 - n1;
assertTrue(nanos >= 0);
long nanosAsMillis = nanos / 1000000;
assertTrue(nanosAsMillis <= millis + MILLIS_ROUND);
}
catch(InterruptedException ie) {
unexpectedException();
}
|
public void | testNanoTime2()Millis between readings of nanos is less than nanos, adjusting
for rounding.
This shows only that nano timing not (much) worse than milli.
try {
long n1 = System.nanoTime();
Thread.sleep(1);
long m1 = System.currentTimeMillis();
Thread.sleep(SHORT_DELAY_MS);
long m2 = System.currentTimeMillis();
Thread.sleep(1);
long n2 = System.nanoTime();
long millis = m2 - m1;
long nanos = n2 - n1;
assertTrue(nanos >= 0);
long nanosAsMillis = nanos / 1000000;
assertTrue(millis <= nanosAsMillis + MILLIS_ROUND);
}
catch(InterruptedException ie) {
unexpectedException();
}
|