FileDocCategorySizeDatePackage
TimeStampTest.javaAPI DocApache Commons NET 1.4.1 API5876Sat Dec 03 10:05:50 GMT 2005org.apache.commons.net.ntp

TimeStampTest

public class TimeStampTest extends TestCase
Test class that validates assertions for the basic TimeStamp operations and comparisons.
author
Jason Mathews, MITRE Corp

Fields Summary
private static final String
TIME1
private static final String
TIME2
private static final String
TIME3
Constructors Summary
Methods Summary
public static voidmain(java.lang.String[] args)
main for running the test.

  // Tue, Dec 17 2002 14:07:25.810 UTC

              
        
    
        junit.textui.TestRunner.run(TimeStampTest.class);
    
public voidtestCompare()


        TimeStamp ts1 = new TimeStamp(TIME1);	// Tue, Dec 17 2002 14:07:24.810 UTC
        TimeStamp ts2 = new TimeStamp(TIME1);
        TimeStamp ts3 = new TimeStamp(TIME2); 	// Tue, Dec 17 2002 14:07:24.810 UTC
        TimeStamp ts4 = new TimeStamp(TIME3); 	// Tue, Dec 17 2002 14:07:25.810 UTC

        // do assertion tests on TimeStamp class
        assertEquals("equals(1,2)", ts1, ts2);
        assertTrue("compareTo(1,2)", ts1.compareTo(ts2) == 0);
        assertEquals("ntpValue(1,2)", ts1.ntpValue(), ts2.ntpValue());
        assertEquals("hashCode(1,2)", ts1.hashCode(), ts2.hashCode());
        assertEquals("ts1==ts1", ts1, ts1);

	// timestamps in ts1 (TIME1) and ts3 (TIME2) are only off by the smallest
	// fraction of a second (~200 picoseconds) so the times are not equal but
	// when converted to Java dates (in milliseconds) they will be equal.
        assertTrue("ts1 != ts3", !ts1.equals(ts3));
        assertTrue("compareTo(1,3)", ts1.compareTo(ts3) == -1);
        assertEquals("seconds", ts1.getSeconds(), ts3.getSeconds());
        assertTrue("fraction", ts1.getFraction() != ts3.getFraction());
        assertTrue("ntpValue(1,3)", ts1.ntpValue() != ts3.ntpValue());
        assertTrue("hashCode(1,3)", ts1.hashCode() != ts3.hashCode());
        long time1 = ts1.getTime();
        long time3 = ts3.getTime();
        assertEquals("equals(time1,3)", time1, time3); // ntpTime1 != ntpTime3 but JavaTime(t1) == JavaTime(t3)...

        assertTrue("ts3 != ts4", !ts3.equals(ts4));
        assertTrue("time3 != ts4.time", time3 != ts4.getTime());
    
public voidtestDateConversion()

	// convert current date to NtpTimeStamp then compare Java date
	// computed from NTP timestamp with original Java date.
	Calendar refCal = Calendar.getInstance(java.util.TimeZone.getTimeZone("UTC"));
	Date refDate = refCal.getTime();
	TimeStamp ts = new TimeStamp(refDate);
	assertEquals("refDate.getTime()", refDate.getTime(), ts.getTime());
	Date tsDate = ts.getDate();
	assertEquals(refDate, tsDate);
    
public voidtestUTCString()

        TimeStamp ts1 = new TimeStamp(TIME1);	// Tue, Dec 17 2002 14:07:24.810 UTC
	String actual = ts1.toUTCString();
	assertEquals("Tue, Dec 17 2002 14:07:24.810 UTC", actual);