1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.net.ntp;
18
19 import java.util.Calendar;
20 import java.util.Date;
21
22 import junit.framework.TestCase;
23
24
25
26
27 public class TimeStampTest extends TestCase {
28
29 private static final String TIME1 = "c1a9ae1c.cf6ac48d";
30 private static final String TIME2 = "c1a9ae1c.cf6ac48f";
31 private static final String TIME3 = "c1a9ae1d.cf6ac48e";
32
33 public void testCompare() {
34
35 final TimeStamp ts1 = new TimeStamp(TIME1);
36 final TimeStamp ts2 = new TimeStamp(TIME1);
37 final TimeStamp ts3 = new TimeStamp(TIME2);
38 final TimeStamp ts4 = new TimeStamp(TIME3);
39
40
41 assertEquals("equals(1,2)", ts1, ts2);
42 assertEquals("compareTo(1,2)", 0, ts1.compareTo(ts2));
43 assertEquals("ntpValue(1,2)", ts1.ntpValue(), ts2.ntpValue());
44 assertEquals("hashCode(1,2)", ts1.hashCode(), ts2.hashCode());
45 assertEquals("ts1==ts1", ts1, ts1);
46
47
48
49
50 assertFalse("ts1 != ts3", ts1.equals(ts3));
51 assertEquals("compareTo(1,3)", -1, ts1.compareTo(ts3));
52 assertEquals("seconds", ts1.getSeconds(), ts3.getSeconds());
53 assertTrue("fraction", ts1.getFraction() != ts3.getFraction());
54 assertTrue("ntpValue(1,3)", ts1.ntpValue() != ts3.ntpValue());
55 assertTrue("hashCode(1,3)", ts1.hashCode() != ts3.hashCode());
56 final long time1 = ts1.getTime();
57 final long time3 = ts3.getTime();
58 assertEquals("equals(time1,3)", time1, time3);
59
60 assertFalse("ts3 != ts4", ts3.equals(ts4));
61 assertTrue("time3 != ts4.time", time3 != ts4.getTime());
62 }
63
64 public void testDateConversion() {
65
66
67 final Calendar refCal = Calendar.getInstance(java.util.TimeZone.getTimeZone("UTC"));
68 final Date refDate = refCal.getTime();
69 final TimeStamp ts = new TimeStamp(refDate);
70 assertEquals("refDate.getTime()", refDate.getTime(), ts.getTime());
71 final Date tsDate = ts.getDate();
72 assertEquals(refDate, tsDate);
73 }
74
75 public void testNotSame() {
76 final TimeStamp time = TimeStamp.getCurrentTime();
77 Object other = Integer.valueOf(0);
78 if (time.equals(other)) {
79 fail("TimeStamp cannot equal Date");
80 }
81 other = null;
82 if (time.equals(other)) {
83 fail("TimeStamp cannot equal null");
84 }
85 }
86
87 public void testUTCString() {
88 final TimeStamp ts1 = new TimeStamp(TIME1);
89 final String actual = ts1.toUTCString();
90 assertEquals("Tue, Dec 17 2002 14:07:24.810 UTC", actual);
91 }
92
93 }