1 /*******************************************************************************
2 * Copyright (c) 2013, 2014 Ericsson
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * Marc-Andre Laperle - Initial API and implementation
11 * Matthew Khouzam - Added timestamp string tests
12 * Patrick Tasse - Updated for fraction of second
13 *******************************************************************************/
15 package org
.eclipse
.linuxtools
.tmf
.core
.tests
.event
;
17 import static org
.junit
.Assert
.assertEquals
;
19 import java
.text
.ParseException
;
20 import java
.util
.Locale
;
21 import java
.util
.TimeZone
;
23 import org
.eclipse
.core
.runtime
.preferences
.IEclipsePreferences
;
24 import org
.eclipse
.core
.runtime
.preferences
.InstanceScope
;
25 import org
.eclipse
.linuxtools
.internal
.tmf
.core
.Activator
;
26 import org
.eclipse
.linuxtools
.tmf
.core
.timestamp
.ITmfTimePreferencesConstants
;
27 import org
.eclipse
.linuxtools
.tmf
.core
.timestamp
.TmfTimePreferences
;
28 import org
.eclipse
.linuxtools
.tmf
.core
.timestamp
.TmfTimestampFormat
;
29 import org
.junit
.Test
;
30 import org
.osgi
.service
.prefs
.BackingStoreException
;
33 * Test suite for the TmfTimestampFormat class.
35 public class TmfTimestampFormatTest
{
37 private static final String TEST_PATTERN
= "HH:mm:ss.SSS";
38 private static final TimeZone TEST_TIME_ZONE
= TimeZone
.getTimeZone(TimeZone
.getAvailableIDs(0)[0]);
39 private static final TimeZone GMT
= TimeZone
.getTimeZone("GMT");
40 private static final Locale CA
= Locale
.CANADA
;
42 private static final TmfTimestampFormat tsf
= new TmfTimestampFormat("yyyy-MM-dd HH:mm:ss.SSSSSSSSS", GMT
, CA
);
43 private static final TmfTimestampFormat tsf1
= new TmfTimestampFormat(TEST_PATTERN
);
44 private static final TmfTimestampFormat tsf2
= new TmfTimestampFormat(TEST_PATTERN
, TEST_TIME_ZONE
);
47 * Test that the default value is loaded when using the default constructor
50 public void testDefaultConstructor() {
51 TmfTimestampFormat ts0
= new TmfTimestampFormat();
52 assertEquals("HH:mm:ss.SSS SSS SSS", ts0
.toPattern());
56 * Test that the value constructor properly assigns the value
59 public void testValueConstructor() {
60 assertEquals(TEST_PATTERN
, tsf1
.toPattern());
64 * Test that the value constructor using a time zone properly assigns the
65 * pattern and time zone
68 public void testValueTimeZoneConstructor() {
69 assertEquals(TEST_PATTERN
, tsf2
.toPattern());
70 assertEquals(TEST_TIME_ZONE
, tsf2
.getTimeZone());
74 * Make sure that the default formats in TmfTimestampFormat get updated when
75 * updateDefaultFormats is called.
78 public void testUpdateDefaultFormats() {
79 IEclipsePreferences node
= InstanceScope
.INSTANCE
.getNode(Activator
.PLUGIN_ID
);
81 String dateTimeTestValue
= ITmfTimePreferencesConstants
.TIME_HOUR_FMT
+ ":";
82 node
.put(ITmfTimePreferencesConstants
.DATIME
, dateTimeTestValue
);
84 String subSecTestValue
= ITmfTimePreferencesConstants
.SUBSEC_NANO_FMT
+ ":";
85 node
.put(ITmfTimePreferencesConstants
.SUBSEC
, subSecTestValue
);
88 } catch (BackingStoreException e
) {
90 TmfTimestampFormat
.updateDefaultFormats();
91 String expected
= dateTimeTestValue
+ "." + subSecTestValue
;
92 String expected2
= "TTT." + subSecTestValue
;
93 assertEquals(expected
, TmfTimestampFormat
.getDefaulTimeFormat().toPattern());
94 assertEquals(expected2
, TmfTimestampFormat
.getDefaulIntervalFormat().toPattern());
96 node
.put(ITmfTimePreferencesConstants
.DATIME
, ITmfTimePreferencesConstants
.TIME_HOUR_FMT
);
97 node
.put(ITmfTimePreferencesConstants
.SUBSEC
, ITmfTimePreferencesConstants
.SUBSEC_NANO_FMT
);
100 } catch (BackingStoreException e
) {
102 TmfTimestampFormat
.updateDefaultFormats();
106 * Test that getDefaulTimeFormat returns the appropriate value (from the
110 public void testGetDefaulTimeFormat() {
111 assertEquals(TmfTimestampFormat
.getDefaulTimeFormat().toPattern(), TmfTimePreferences
.getInstance().getTimePattern());
115 * Test that getDefaulIntervalFormat returns the appropriate value (from the
119 public void testGetDefaulIntervalFormat() {
120 assertEquals(TmfTimestampFormat
.getDefaulIntervalFormat().toPattern(), TmfTimePreferences
.getInstance().getIntervalPattern());
124 * Test parsing of seconds and sub-seconds
126 * @throws ParseException
127 * should not happen, if it does, the test is a failure
130 public void testParseSeconds() throws ParseException
{
131 assertEquals(7777777777123456789L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue("7777777777.123456789"));
132 assertEquals(7777777777123456789L, new TmfTimestampFormat("T.SSSSSSSSS").parseValue("7777777777.123456789"));
133 assertEquals(7123456789L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue("0000000007.123456789"));
134 assertEquals(7123456789L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue("7.123456789"));
135 assertEquals(7123456780L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue("7.12345678"));
136 assertEquals(7123456700L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue("7.1234567"));
137 assertEquals(7123456000L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue("7.123456"));
138 assertEquals(7123450000L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue("7.12345"));
139 assertEquals(7123400000L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue("7.1234"));
140 assertEquals(7123000000L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue("7.123"));
141 assertEquals(7120000000L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue("7.12"));
142 assertEquals(7100000000L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue("7.1"));
143 assertEquals(7000000000L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue("7."));
144 assertEquals(7000000000L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue("7"));
145 assertEquals(123456789L, new TmfTimestampFormat("TTTTTTTTTT.SSSSSSSSS").parseValue(".123456789"));
146 assertEquals(123456789L, new TmfTimestampFormat(".SSSSSSSSS").parseValue(".123456789"));
147 assertEquals(123456780L, new TmfTimestampFormat(".SSSSSSSS").parseValue(".123456789"));
148 assertEquals(123456700L, new TmfTimestampFormat(".SSSSSSS").parseValue(".123456789"));
149 assertEquals(123456000L, new TmfTimestampFormat(".SSSSSS").parseValue(".123456789"));
150 assertEquals(123450000L, new TmfTimestampFormat(".SSSSS").parseValue(".123456789"));
151 assertEquals(123400000L, new TmfTimestampFormat(".SSSS").parseValue(".123456789"));
152 assertEquals(123000000L, new TmfTimestampFormat(".SSS").parseValue(".123456789"));
153 assertEquals(120000000L, new TmfTimestampFormat(".SS").parseValue(".123456789"));
154 assertEquals(100000000L, new TmfTimestampFormat(".S").parseValue(".123456789"));
155 assertEquals(7123456789L, new TmfTimestampFormat("T.SSSSSSSSS").parseValue("7.123456789"));
156 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS SSS SSS").parseValue("7.123 456 789"));
157 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS SSS SSS").parseValue("7.123456789"));
158 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS.SSS.SSS").parseValue("7.123.456.789"));
159 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS.SSS.SSS").parseValue("7.123456789"));
160 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS,SSS,SSS").parseValue("7.123,456,789"));
161 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS,SSS,SSS").parseValue("7.123456789"));
162 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS-SSS-SSS").parseValue("7.123-456-789"));
163 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS-SSS-SSS").parseValue("7.123456789"));
164 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS_SSS_SSS").parseValue("7.123_456_789"));
165 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS_SSS_SSS").parseValue("7.123456789"));
166 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS:SSS:SSS").parseValue("7.123:456:789"));
167 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS:SSS:SSS").parseValue("7.123456789"));
168 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS;SSS;SSS").parseValue("7.123;456;789"));
169 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS;SSS;SSS").parseValue("7.123456789"));
170 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS/SSS/SSS").parseValue("7.123/456/789"));
171 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS/SSS/SSS").parseValue("7.123456789"));
172 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS''SSS''SSS").parseValue("7.123'456'789"));
173 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS''SSS''SSS").parseValue("7.123456789"));
174 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS\"SSS\"SSS").parseValue("7.123\"456\"789"));
175 assertEquals(7123456789L, new TmfTimestampFormat("T.SSS\"SSS\"SSS").parseValue("7.123456789"));
176 assertEquals(7000000000L, new TmfTimestampFormat("T. SSSSSSSSS").parseValue("7..123456789"));
177 assertEquals(7100000000L, new TmfTimestampFormat("T.S SSSSSSSS").parseValue("7.1,23456789"));
178 assertEquals(7120000000L, new TmfTimestampFormat("T.SS SSSSSSS").parseValue("7.12-3456789"));
179 assertEquals(7123000000L, new TmfTimestampFormat("T.SSS SSSSSS").parseValue("7.123_456789"));
180 assertEquals(7123400000L, new TmfTimestampFormat("T.SSSS SSSSS").parseValue("7.1234:56789"));
181 assertEquals(7123450000L, new TmfTimestampFormat("T.SSSSS SSSS").parseValue("7.12345;6789"));
182 assertEquals(7123456000L, new TmfTimestampFormat("T.SSSSSS SSS").parseValue("7.123456/789"));
183 assertEquals(7123456700L, new TmfTimestampFormat("T.SSSSSSS SS").parseValue("7.1234567'89"));
184 assertEquals(7123456780L, new TmfTimestampFormat("T.SSSSSSSS S").parseValue("7.12345678\"9"));
185 assertEquals(7123456789L, new TmfTimestampFormat("T 's'.SSS ms SSS us SSS ns").parseValue("7 s.123 ms 456 us 789 ns"));
186 assertEquals(7123456789L, new TmfTimestampFormat("T 'S'.SSS 'MS' SSS 'US' SSS 'NS'").parseValue("7 S.123 MS 456 US 789 NS"));
187 assertEquals(7123000000L, new TmfTimestampFormat("T.SSSSSSSSS").parseValue("7 s.123 ms 456 ns 789"));
188 assertEquals(0L, new TmfTimestampFormat("T.").parseValue("0.123456789"));
189 assertEquals(0L, new TmfTimestampFormat("T.S").parseValue("."));
190 assertEquals(0L, new TmfTimestampFormat(".S").parseValue("7."));
191 assertEquals(0L, new TmfTimestampFormat("T.S").parseValue("-."));
192 assertEquals(0L, new TmfTimestampFormat("T.S").parseValue("-0"));
193 assertEquals(-100000000L, new TmfTimestampFormat("T.S").parseValue("-0.1"));
194 assertEquals(-100000000L, new TmfTimestampFormat("T.S").parseValue("-.1"));
195 assertEquals(-7000000000L, new TmfTimestampFormat("T.S").parseValue("-7"));
196 assertEquals(-7000000000L, new TmfTimestampFormat("T.S").parseValue("-7."));
197 assertEquals(-7000000000L, new TmfTimestampFormat("T.S").parseValue("-7.0"));
198 assertEquals(-7100000000L, new TmfTimestampFormat("T.S").parseValue("-7.1"));
202 * Test parsing of date and time patterns
204 * @throws ParseException
205 * should not happen, if it does, the test is a failure
208 public void testParseDateTime() throws ParseException
{
209 // long ref = tsf.parseValue("2014-11-22 12:34:56.123456789"); // Saturday
212 time
= new TmfTimestampFormat("yyyy", GMT
, CA
).parseValue("2014");
213 assertEquals("2014-01-01 00:00:00.000000000", tsf
.format(time
));
215 time
= new TmfTimestampFormat("YYYY", GMT
, CA
).parseValue("2014");
216 assertEquals("2013-12-29 00:00:00.000000000", tsf
.format(time
)); // 1st day of week 1
218 time
= new TmfTimestampFormat("MM", GMT
, CA
).parseValue("11");
219 assertEquals("1970-11-01 00:00:00.000000000", tsf
.format(time
));
221 time
= new TmfTimestampFormat("ww", GMT
, CA
).parseValue("01");
222 assertEquals("1969-12-28 00:00:00.000000000", tsf
.format(time
)); // Sunday of week 1
224 time
= new TmfTimestampFormat("DDD", GMT
, CA
).parseValue("100");
225 assertEquals("1970-04-10 00:00:00.000000000", tsf
.format(time
));
227 time
= new TmfTimestampFormat("F", GMT
, CA
).parseValue("2");
228 assertEquals("1970-01-11 00:00:00.000000000", tsf
.format(time
)); // 2nd Sunday of month
230 time
= new TmfTimestampFormat("EEE", GMT
, CA
).parseValue("Mon");
231 assertEquals("1970-01-05 00:00:00.000000000", tsf
.format(time
));
233 time
= new TmfTimestampFormat("u", GMT
, CA
).parseValue("1");
234 assertEquals("1970-01-05 00:00:00.000000000", tsf
.format(time
));
236 time
= new TmfTimestampFormat("dd", GMT
, CA
).parseValue("22");
237 assertEquals("1970-01-22 00:00:00.000000000", tsf
.format(time
));
239 time
= new TmfTimestampFormat("HH", GMT
, CA
).parseValue("12");
240 assertEquals("1970-01-01 12:00:00.000000000", tsf
.format(time
));
242 time
= new TmfTimestampFormat("kk", GMT
, CA
).parseValue("24");
243 assertEquals("1970-01-01 00:00:00.000000000", tsf
.format(time
));
245 time
= new TmfTimestampFormat("KK", GMT
, CA
).parseValue("12");
246 assertEquals("1970-01-01 12:00:00.000000000", tsf
.format(time
));
248 time
= new TmfTimestampFormat("hh", GMT
, CA
).parseValue("12");
249 assertEquals("1970-01-01 00:00:00.000000000", tsf
.format(time
));
251 time
= new TmfTimestampFormat("mm", GMT
, CA
).parseValue("34");
252 assertEquals("1970-01-01 00:34:00.000000000", tsf
.format(time
));
254 time
= new TmfTimestampFormat("ss", GMT
, CA
).parseValue("56");
255 assertEquals("1970-01-01 00:00:56.000000000", tsf
.format(time
));
257 time
= new TmfTimestampFormat("yyyy-MM", GMT
, CA
).parseValue("2014-11");
258 assertEquals("2014-11-01 00:00:00.000000000", tsf
.format(time
));
260 time
= new TmfTimestampFormat("yyyy-MM-dd", GMT
, CA
).parseValue("2014-11-22");
261 assertEquals("2014-11-22 00:00:00.000000000", tsf
.format(time
));
263 time
= new TmfTimestampFormat("yyyy-MM-dd HH", GMT
, CA
).parseValue("2014-11-22 12");
264 assertEquals("2014-11-22 12:00:00.000000000", tsf
.format(time
));
266 time
= new TmfTimestampFormat("yyyy-MM-dd HH:mm", GMT
, CA
).parseValue("2014-11-22 12:34");
267 assertEquals("2014-11-22 12:34:00.000000000", tsf
.format(time
));
269 time
= new TmfTimestampFormat("yyyy-MM-dd HH:mm:ss", GMT
, CA
).parseValue("2014-11-22 12:34:56");
270 assertEquals("2014-11-22 12:34:56.000000000", tsf
.format(time
));
272 time
= new TmfTimestampFormat("yyyy-MM-dd HH:mm:ss.SSS", GMT
, CA
).parseValue("2014-11-22 12:34:56.123");
273 assertEquals("2014-11-22 12:34:56.123000000", tsf
.format(time
));
275 time
= new TmfTimestampFormat("yyyy-ww", GMT
, CA
).parseValue("2014-01");
276 assertEquals("2013-12-29 00:00:00.000000000", tsf
.format(time
)); // Sunday of week 1
278 time
= new TmfTimestampFormat("yyyy-DDD", GMT
, CA
).parseValue("2014-100");
279 assertEquals("2014-04-10 00:00:00.000000000", tsf
.format(time
));
281 time
= new TmfTimestampFormat("yyyy-MM-F", GMT
, CA
).parseValue("2014-11-2");
282 assertEquals("2014-11-09 00:00:00.000000000", tsf
.format(time
)); // 2nd Sunday of month
284 time
= new TmfTimestampFormat("yyyy-MM-EEE", GMT
, CA
).parseValue("2014-11-Mon");
285 assertEquals("2014-11-03 00:00:00.000000000", tsf
.format(time
));
287 time
= new TmfTimestampFormat("yyyy-MM-u", GMT
, CA
).parseValue("2014-11-1");
288 assertEquals("2014-11-03 00:00:00.000000000", tsf
.format(time
));
290 time
= new TmfTimestampFormat("yyyy MM dd HH mm ss SSS SSS SSS", GMT
, CA
).parseValue("2014 11 22 12 34 56 123 456 789");
291 assertEquals("2014-11-22 12:34:56.123456789", tsf
.format(time
));
293 time
= new TmfTimestampFormat("yyyy.MM.dd.HH.mm.ss.SSS.SSS.SSS", GMT
, CA
).parseValue("2014.11.22.12.34.56.123.456.789");
294 assertEquals("2014-11-22 12:34:56.123456789", tsf
.format(time
));
296 time
= new TmfTimestampFormat("yyyy,MM,dd,HH,mm,ss,SSS,SSS,SSS", GMT
, CA
).parseValue("2014,11,22,12,34,56,123,456,789");
297 assertEquals("2014-11-22 12:34:56.123456789", tsf
.format(time
));
299 time
= new TmfTimestampFormat("yyyy-MM-dd-HH-mm-ss-SSS-SSS-SSS", GMT
, CA
).parseValue("2014-11-22-12-34-56-123-456-789");
300 assertEquals("2014-11-22 12:34:56.123456789", tsf
.format(time
));
302 time
= new TmfTimestampFormat("yyyy_MM_dd_HH_mm_ss_SSS_SSS_SSS", GMT
, CA
).parseValue("2014_11_22_12_34_56_123_456_789");
303 assertEquals("2014-11-22 12:34:56.123456789", tsf
.format(time
));
305 time
= new TmfTimestampFormat("yyyy:MM:dd:HH:mm:ss:SSS:SSS:SSS", GMT
, CA
).parseValue("2014:11:22:12:34:56:123:456:789");
306 assertEquals("2014-11-22 12:34:56.123456789", tsf
.format(time
));
308 time
= new TmfTimestampFormat("yyyy;MM;dd;HH;mm;ss;SSS;SSS;SSS", GMT
, CA
).parseValue("2014;11;22;12;34;56;123;456;789");
309 assertEquals("2014-11-22 12:34:56.123456789", tsf
.format(time
));
311 time
= new TmfTimestampFormat("yyyy/MM/dd/HH/mm/ss/SSS/SSS/SSS", GMT
, CA
).parseValue("2014/11/22/12/34/56/123/456/789");
312 assertEquals("2014-11-22 12:34:56.123456789", tsf
.format(time
));
314 time
= new TmfTimestampFormat("yyyy''MM''dd''HH''mm''ss''SSS''SSS''SSS", GMT
, CA
).parseValue("2014'11'22'12'34'56'123'456'789");
315 assertEquals("2014-11-22 12:34:56.123456789", tsf
.format(time
));
317 time
= new TmfTimestampFormat("yyyy\"MM\"dd\"HH\"mm\"ss\"SSS\"SSS\"SSS", GMT
, CA
).parseValue("2014\"11\"22\"12\"34\"56\"123\"456\"789");
318 assertEquals("2014-11-22 12:34:56.123456789", tsf
.format(time
));
322 * Test parsing of date and time patterns with reference time
324 * @throws ParseException
325 * should not happen, if it does, the test is a failure
328 public void testParseDateTimeWithRef() throws ParseException
{
329 long ref
= tsf
.parseValue("2014-11-22 12:34:56.123456789"); // Saturday
332 time
= new TmfTimestampFormat("yyyy", GMT
, CA
).parseValue("1970", ref
);
333 assertEquals("1970-01-01 00:00:00.000000000", tsf
.format(time
));
335 time
= new TmfTimestampFormat("YYYY", GMT
, CA
).parseValue("1970", ref
);
336 assertEquals("1969-12-28 00:00:00.000000000", tsf
.format(time
)); // 1st day of week 1
338 time
= new TmfTimestampFormat("MM", GMT
, CA
).parseValue("01", ref
);
339 assertEquals("2014-01-01 00:00:00.000000000", tsf
.format(time
));
341 time
= new TmfTimestampFormat("ww", GMT
, CA
).parseValue("01", ref
);
342 assertEquals("2014-01-04 00:00:00.000000000", tsf
.format(time
)); // Saturday of week 1
344 time
= new TmfTimestampFormat("DDD", GMT
, CA
).parseValue("1", ref
);
345 assertEquals("2014-01-01 00:00:00.000000000", tsf
.format(time
));
347 time
= new TmfTimestampFormat("F", GMT
, CA
).parseValue("2", ref
);
348 assertEquals("2014-11-08 00:00:00.000000000", tsf
.format(time
)); // 2nd Saturday of month
350 time
= new TmfTimestampFormat("EEE", GMT
, CA
).parseValue("Mon", ref
);
351 assertEquals("2014-11-17 00:00:00.000000000", tsf
.format(time
));
353 time
= new TmfTimestampFormat("u", GMT
, CA
).parseValue("1", ref
);
354 assertEquals("2014-11-17 00:00:00.000000000", tsf
.format(time
));
356 time
= new TmfTimestampFormat("dd", GMT
, CA
).parseValue("01", ref
);
357 assertEquals("2014-11-01 00:00:00.000000000", tsf
.format(time
));
359 time
= new TmfTimestampFormat("HH", GMT
, CA
).parseValue("00", ref
);
360 assertEquals("2014-11-22 00:00:00.000000000", tsf
.format(time
));
362 time
= new TmfTimestampFormat("kk", GMT
, CA
).parseValue("24", ref
);
363 assertEquals("2014-11-22 00:00:00.000000000", tsf
.format(time
));
365 time
= new TmfTimestampFormat("KK", GMT
, CA
).parseValue("00", ref
);
366 assertEquals("2014-11-22 00:00:00.000000000", tsf
.format(time
));
368 time
= new TmfTimestampFormat("hh", GMT
, CA
).parseValue("12", ref
);
369 assertEquals("2014-11-22 00:00:00.000000000", tsf
.format(time
));
371 time
= new TmfTimestampFormat("mm", GMT
, CA
).parseValue("00", ref
);
372 assertEquals("2014-11-22 12:00:00.000000000", tsf
.format(time
));
374 time
= new TmfTimestampFormat("ss", GMT
, CA
).parseValue("00", ref
);
375 assertEquals("2014-11-22 12:34:00.000000000", tsf
.format(time
));
377 time
= new TmfTimestampFormat(".S", GMT
, CA
).parseValue(".9", ref
);
378 assertEquals("2014-11-22 12:34:56.900000000", tsf
.format(time
));
380 time
= new TmfTimestampFormat("T.S", GMT
, CA
).parseValue("8.9", ref
);
381 assertEquals("1970-01-01 00:00:08.900000000", tsf
.format(time
));
383 time
= new TmfTimestampFormat("T.S", GMT
, CA
).parseValue(".9", ref
);
384 assertEquals("1970-01-01 00:00:00.900000000", tsf
.format(time
));