KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > commons > lang > time > DateFormatUtilsTest


1 /*
2  * Copyright 2002-2005 The Apache Software Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16 package org.apache.commons.lang.time;
17
18 import java.lang.reflect.Constructor JavaDoc;
19 import java.lang.reflect.Modifier JavaDoc;
20 import java.util.Calendar JavaDoc;
21 import java.util.TimeZone JavaDoc;
22
23 import junit.framework.Test;
24 import junit.framework.TestCase;
25 import junit.framework.TestSuite;
26 import junit.textui.TestRunner;
27
28 /**
29  * TestCase for DateFormatUtils.
30  *
31  * @author Apache Ant - DateUtilsTest
32  * @author <a HREF="mailto:sbailliez@apache.org">Stephane Bailliez</a>
33  * @author <a HREF="mailto:stefan.bodewig@epost.de">Stefan Bodewig</a>
34  * @author Stephen Colebourne
35  * @author <a HREF="mailto:ggregory@seagullsw.com">Gary Gregory</a>
36  */

37 public class DateFormatUtilsTest extends TestCase {
38
39     public static void main(String JavaDoc[] args) {
40         TestRunner.run(suite());
41     }
42
43     public static Test suite() {
44         TestSuite suite = new TestSuite(DateFormatUtilsTest.class);
45         suite.setName("DateFormatUtils Tests");
46         return suite;
47     }
48
49     public DateFormatUtilsTest(String JavaDoc s) {
50         super(s);
51     }
52
53     //-----------------------------------------------------------------------
54
public void testConstructor() {
55         assertNotNull(new DateFormatUtils());
56         Constructor JavaDoc[] cons = DateFormatUtils.class.getDeclaredConstructors();
57         assertEquals(1, cons.length);
58         assertEquals(true, Modifier.isPublic(cons[0].getModifiers()));
59         assertEquals(true, Modifier.isPublic(DateFormatUtils.class.getModifiers()));
60         assertEquals(false, Modifier.isFinal(DateFormatUtils.class.getModifiers()));
61     }
62     
63     //-----------------------------------------------------------------------
64
public void testDateTimeISO(){
65         TimeZone JavaDoc timeZone = TimeZone.getTimeZone("GMT-3");
66         Calendar JavaDoc cal = Calendar.getInstance(timeZone);
67         cal.set(2002,1,23,9,11,12);
68         String JavaDoc text = DateFormatUtils.format(cal.getTime(),
69                         DateFormatUtils.ISO_DATETIME_FORMAT.getPattern(), timeZone);
70         assertEquals("2002-02-23T09:11:12", text);
71         text = DateFormatUtils.format(cal.getTime().getTime(),
72                       DateFormatUtils.ISO_DATETIME_FORMAT.getPattern(), timeZone);
73         assertEquals("2002-02-23T09:11:12", text);
74         text = DateFormatUtils.ISO_DATETIME_FORMAT.format(cal);
75         assertEquals("2002-02-23T09:11:12", text);
76         
77         text = DateFormatUtils.format(cal.getTime(),
78                       DateFormatUtils.ISO_DATETIME_TIME_ZONE_FORMAT.getPattern(), timeZone);
79         assertEquals("2002-02-23T09:11:12-03:00", text);
80         text = DateFormatUtils.format(cal.getTime().getTime(),
81                       DateFormatUtils.ISO_DATETIME_TIME_ZONE_FORMAT.getPattern(), timeZone);
82         assertEquals("2002-02-23T09:11:12-03:00", text);
83         text = DateFormatUtils.ISO_DATETIME_TIME_ZONE_FORMAT.format(cal);
84         assertEquals("2002-02-23T09:11:12-03:00", text);
85     }
86
87     public void testDateISO(){
88         TimeZone JavaDoc timeZone = TimeZone.getTimeZone("GMT-3");
89         Calendar JavaDoc cal = Calendar.getInstance(timeZone);
90         cal.set(2002,1,23,10,11,12);
91         String JavaDoc text = DateFormatUtils.format(cal.getTime(),
92                         DateFormatUtils.ISO_DATE_FORMAT.getPattern(), timeZone);
93         assertEquals("2002-02-23", text);
94         text = DateFormatUtils.format(cal.getTime().getTime(),
95                         DateFormatUtils.ISO_DATE_FORMAT.getPattern(), timeZone);
96         assertEquals("2002-02-23", text);
97         text = DateFormatUtils.ISO_DATE_FORMAT.format(cal);
98         assertEquals("2002-02-23", text);
99         
100         text = DateFormatUtils.format(cal.getTime(),
101                       DateFormatUtils.ISO_DATE_TIME_ZONE_FORMAT.getPattern(), timeZone);
102         assertEquals("2002-02-23-03:00", text);
103         text = DateFormatUtils.format(cal.getTime().getTime(),
104                       DateFormatUtils.ISO_DATE_TIME_ZONE_FORMAT.getPattern(), timeZone);
105         assertEquals("2002-02-23-03:00", text);
106         text = DateFormatUtils.ISO_DATE_TIME_ZONE_FORMAT.format(cal);
107         assertEquals("2002-02-23-03:00", text);
108     }
109
110     public void testTimeISO(){
111         TimeZone JavaDoc timeZone = TimeZone.getTimeZone("GMT-3");
112         Calendar JavaDoc cal = Calendar.getInstance(timeZone);
113         cal.set(2002,1,23,10,11,12);
114         String JavaDoc text = DateFormatUtils.format(cal.getTime(),
115                         DateFormatUtils.ISO_TIME_FORMAT.getPattern(), timeZone);
116         assertEquals("T10:11:12", text);
117         text = DateFormatUtils.format(cal.getTime().getTime(),
118                         DateFormatUtils.ISO_TIME_FORMAT.getPattern(), timeZone);
119         assertEquals("T10:11:12", text);
120         text = DateFormatUtils.ISO_TIME_FORMAT.format(cal);
121         assertEquals("T10:11:12", text);
122         
123         text = DateFormatUtils.format(cal.getTime(),
124                       DateFormatUtils.ISO_TIME_TIME_ZONE_FORMAT.getPattern(), timeZone);
125         assertEquals("T10:11:12-03:00", text);
126         text = DateFormatUtils.format(cal.getTime().getTime(),
127                       DateFormatUtils.ISO_TIME_TIME_ZONE_FORMAT.getPattern(), timeZone);
128         assertEquals("T10:11:12-03:00", text);
129         text = DateFormatUtils.ISO_TIME_TIME_ZONE_FORMAT.format(cal);
130         assertEquals("T10:11:12-03:00", text);
131     }
132
133     public void testTimeNoTISO(){
134         TimeZone JavaDoc timeZone = TimeZone.getTimeZone("GMT-3");
135         Calendar JavaDoc cal = Calendar.getInstance(timeZone);
136         cal.set(2002,1,23,10,11,12);
137         String JavaDoc text = DateFormatUtils.format(cal.getTime(),
138                         DateFormatUtils.ISO_TIME_NO_T_FORMAT.getPattern(), timeZone);
139         assertEquals("10:11:12", text);
140         text = DateFormatUtils.format(cal.getTime().getTime(),
141                         DateFormatUtils.ISO_TIME_NO_T_FORMAT.getPattern(), timeZone);
142         assertEquals("10:11:12", text);
143         text = DateFormatUtils.ISO_TIME_NO_T_FORMAT.format(cal);
144         assertEquals("10:11:12", text);
145         
146         text = DateFormatUtils.format(cal.getTime(),
147                       DateFormatUtils.ISO_TIME_NO_T_TIME_ZONE_FORMAT.getPattern(), timeZone);
148         assertEquals("10:11:12-03:00", text);
149         text = DateFormatUtils.format(cal.getTime().getTime(),
150                       DateFormatUtils.ISO_TIME_NO_T_TIME_ZONE_FORMAT.getPattern(), timeZone);
151         assertEquals("10:11:12-03:00", text);
152         text = DateFormatUtils.ISO_TIME_NO_T_TIME_ZONE_FORMAT.format(cal);
153         assertEquals("10:11:12-03:00", text);
154     }
155
156     public void testSMTP(){
157         TimeZone JavaDoc timeZone = TimeZone.getTimeZone("GMT-3");
158         Calendar JavaDoc cal = Calendar.getInstance(timeZone);
159         cal.set(2003,5,8,10,11,12);
160         String JavaDoc text = DateFormatUtils.format(cal.getTime(),
161                         DateFormatUtils.SMTP_DATETIME_FORMAT.getPattern(), timeZone,
162                         DateFormatUtils.SMTP_DATETIME_FORMAT.getLocale());
163         assertEquals("Sun, 08 Jun 2003 10:11:12 -0300", text);
164         text = DateFormatUtils.format(cal.getTime().getTime(),
165                         DateFormatUtils.SMTP_DATETIME_FORMAT.getPattern(), timeZone,
166                         DateFormatUtils.SMTP_DATETIME_FORMAT.getLocale());
167         assertEquals("Sun, 08 Jun 2003 10:11:12 -0300", text);
168         text = DateFormatUtils.SMTP_DATETIME_FORMAT.format(cal);
169         assertEquals("Sun, 08 Jun 2003 10:11:12 -0300", text);
170         
171         // format UTC
172
text = DateFormatUtils.formatUTC(cal.getTime().getTime(),
173                         DateFormatUtils.SMTP_DATETIME_FORMAT.getPattern(),
174                         DateFormatUtils.SMTP_DATETIME_FORMAT.getLocale());
175         assertEquals("Sun, 08 Jun 2003 13:11:12 +0000", text);
176     }
177
178 }
179
Popular Tags