Revision bf3b1132
Added by Andreas Müller almost 4 years ago
cdmlib-model/src/test/java/eu/etaxonomy/cdm/strategy/parser/TimePeriodParserTest.java | ||
---|---|---|
38 | 38 |
// private TimePeriod startAndEndYear; |
39 | 39 |
// private TimePeriod noStartAndEndYear; |
40 | 40 |
|
41 |
private static final String SEP = TimePeriod.SEP; |
|
41 | 42 |
|
42 | 43 |
/** |
43 | 44 |
* @throws java.lang.Exception |
... | ... | |
93 | 94 |
strTimePeriod = "1756-88"; |
94 | 95 |
tp1 = TimePeriodParser.parseString(strTimePeriod); |
95 | 96 |
assertNotNull(tp1); |
96 |
Assert.assertEquals("1756-1788", tp1.getYear());
|
|
97 |
Assert.assertEquals("1756"+SEP+"1788", tp1.getYear());
|
|
97 | 98 |
Assert.assertEquals("1756", String.valueOf(tp1.getStartYear())); |
98 | 99 |
Assert.assertEquals("1788", String.valueOf(tp1.getEndYear())); |
99 | 100 |
assertNull(tp1.getEndMonth()); |
... | ... | |
134 | 135 |
Assert.assertEquals(strCPeriod, tpC.getFreeText()); |
135 | 136 |
Assert.assertEquals(Integer.valueOf(1806), tpC.getStartYear()); |
136 | 137 |
Assert.assertEquals(Integer.valueOf(1810), tpC.getEndYear()); |
137 |
Assert.assertEquals("1806-1810", tpC.getYear());
|
|
138 |
Assert.assertEquals("1806"+SEP+"1810", tpC.getYear());
|
|
138 | 139 |
|
139 | 140 |
//1.1.2011 |
140 | 141 |
String strDotDate = "1.2.2011"; |
141 | 142 |
TimePeriod tp = TimePeriodParser.parseString(strDotDate); |
142 | 143 |
assertNotNull(tp); |
143 |
Assert.assertEquals(strDotDate, tp.toString());
|
|
144 |
Assert.assertEquals("2011 Feb 1", tp.toString());
|
|
144 | 145 |
Assert.assertEquals("2011", tp.getYear()); |
145 | 146 |
Assert.assertEquals(Integer.valueOf(2), tp.getStartMonth()); |
146 | 147 |
Assert.assertEquals(Integer.valueOf(1), tp.getStartDay()); |
... | ... | |
148 | 149 |
strDotDate = "31.03.2012"; |
149 | 150 |
tp = TimePeriodParser.parseString(strDotDate); |
150 | 151 |
assertNotNull(tp); |
151 |
Assert.assertEquals("31.3.2012", tp.toString());
|
|
152 |
Assert.assertEquals("2012 Mar 31", tp.toString());
|
|
152 | 153 |
Assert.assertEquals("2012", tp.getYear()); |
153 | 154 |
Assert.assertEquals(Integer.valueOf(3), tp.getStartMonth()); |
154 | 155 |
Assert.assertEquals(Integer.valueOf(31), tp.getStartDay()); |
... | ... | |
156 | 157 |
strDotDate = "00.04.2013"; |
157 | 158 |
tp = TimePeriodParser.parseString(strDotDate); |
158 | 159 |
assertNotNull(tp); |
159 |
Assert.assertEquals("4.2013", tp.toString());
|
|
160 |
Assert.assertEquals("2013 Apr", tp.toString());
|
|
160 | 161 |
Assert.assertEquals("2013", tp.getYear()); |
161 | 162 |
Assert.assertEquals(Integer.valueOf(4), tp.getStartMonth()); |
162 | 163 |
Assert.assertEquals(null, tp.getStartDay()); |
... | ... | |
164 | 165 |
strDotDate = "13.00.2014"; |
165 | 166 |
tp = TimePeriodParser.parseString(strDotDate); |
166 | 167 |
assertNotNull(tp); |
167 |
Assert.assertEquals("13.xx.2014", tp.toString());
|
|
168 |
Assert.assertEquals("2014 MMM 13", tp.toString());
|
|
168 | 169 |
Assert.assertEquals("2014", tp.getYear()); |
169 | 170 |
Assert.assertEquals(null, tp.getStartMonth()); |
170 | 171 |
Assert.assertEquals(Integer.valueOf(13), tp.getStartDay()); |
... | ... | |
172 | 173 |
strDotDate = "31.12.2015 - 02.01.2016"; |
173 | 174 |
tp = TimePeriodParser.parseString(strDotDate); |
174 | 175 |
assertNotNull(tp); |
175 |
Assert.assertEquals("31.12.2015-2.1.2016", tp.toString());
|
|
176 |
Assert.assertEquals("2015-2016", tp.getYear());
|
|
176 |
Assert.assertEquals("2015 Dec 31"+SEP+"2016 Jan 2", tp.toString());
|
|
177 |
Assert.assertEquals("2015"+SEP+"2016", tp.getYear());
|
|
177 | 178 |
Assert.assertEquals(Integer.valueOf(2015), tp.getStartYear()); |
178 | 179 |
Assert.assertEquals(Integer.valueOf(12), tp.getStartMonth()); |
179 | 180 |
Assert.assertEquals(Integer.valueOf(31), tp.getStartDay()); |
... | ... | |
189 | 190 |
String strSlashDate = "31/12/2015 - 2/1/2016"; |
190 | 191 |
TimePeriod tp = TimePeriodParser.parseString(strSlashDate); |
191 | 192 |
assertNotNull(tp); |
192 |
Assert.assertEquals("31.12.2015-2.1.2016", tp.toString());
|
|
193 |
Assert.assertEquals("2015-2016", tp.getYear());
|
|
193 |
Assert.assertEquals("2015 Dec 31"+SEP+"2016 Jan 2", tp.toString());
|
|
194 |
Assert.assertEquals("2015"+SEP+"2016", tp.getYear());
|
|
194 | 195 |
Assert.assertEquals(Integer.valueOf(2015), tp.getStartYear()); |
195 | 196 |
Assert.assertEquals(Integer.valueOf(12), tp.getStartMonth()); |
196 | 197 |
Assert.assertEquals(Integer.valueOf(31), tp.getStartDay()); |
... | ... | |
201 | 202 |
strSlashDate = "1/12/2015 - 2/1/2016"; |
202 | 203 |
tp = TimePeriodParser.parseString(strSlashDate); |
203 | 204 |
assertNotNull(tp); |
204 |
Assert.assertEquals("1.12.2015-2.1.2016", tp.toString());
|
|
205 |
Assert.assertEquals("2015-2016", tp.getYear());
|
|
205 |
Assert.assertEquals("2015 Dec 1"+SEP+"2016 Jan 2", tp.toString());
|
|
206 |
Assert.assertEquals("2015"+SEP+"2016", tp.getYear());
|
|
206 | 207 |
Assert.assertEquals(Integer.valueOf(2015), tp.getStartYear()); |
207 | 208 |
Assert.assertEquals(Integer.valueOf(12), tp.getStartMonth()); |
208 | 209 |
Assert.assertEquals(Integer.valueOf(1), tp.getStartDay()); |
... | ... | |
216 | 217 |
String strDate = "24 Aug. 1957"; |
217 | 218 |
TimePeriod tp = TimePeriodParser.parseString(strDate); |
218 | 219 |
assertNotNull(tp); |
219 |
Assert.assertEquals("24.8.1957", tp.toString());
|
|
220 |
Assert.assertEquals("1957 Aug 24", tp.toString());
|
|
220 | 221 |
Assert.assertEquals("1957", tp.getYear()); |
221 | 222 |
Assert.assertEquals(Integer.valueOf(1957), tp.getStartYear()); |
222 | 223 |
Assert.assertEquals(Integer.valueOf(8), tp.getStartMonth()); |
... | ... | |
225 | 226 |
String strSingleDay = "8 March 1957"; |
226 | 227 |
tp = TimePeriodParser.parseString(strSingleDay); |
227 | 228 |
assertNotNull(tp); |
228 |
Assert.assertEquals("8.3.1957", tp.toString());
|
|
229 |
Assert.assertEquals("1957 Mar 8", tp.toString());
|
|
229 | 230 |
Assert.assertEquals("1957", tp.getYear()); |
230 | 231 |
Assert.assertEquals(Integer.valueOf(1957), tp.getStartYear()); |
231 | 232 |
Assert.assertEquals(Integer.valueOf(3), tp.getStartMonth()); |
... | ... | |
234 | 235 |
String strNoSpace = "26.Apr.2003"; |
235 | 236 |
tp = TimePeriodParser.parseString(strNoSpace); |
236 | 237 |
assertNotNull(tp); |
237 |
Assert.assertEquals("26.4.2003", tp.toString());
|
|
238 |
Assert.assertEquals("2003 Apr 26", tp.toString());
|
|
238 | 239 |
Assert.assertEquals("2003", tp.getYear()); |
239 | 240 |
Assert.assertEquals(Integer.valueOf(2003), tp.getStartYear()); |
240 | 241 |
Assert.assertEquals(Integer.valueOf(4), tp.getStartMonth()); |
... | ... | |
243 | 244 |
String strMissingDay = "Feb. 1894"; |
244 | 245 |
tp = TimePeriodParser.parseString(strMissingDay); |
245 | 246 |
assertNotNull(tp); |
246 |
Assert.assertEquals("2.1894", tp.toString());
|
|
247 |
Assert.assertEquals("1894 Feb", tp.toString());
|
|
247 | 248 |
Assert.assertEquals("1894", tp.getYear()); |
248 | 249 |
Assert.assertEquals(Integer.valueOf(1894), tp.getStartYear()); |
249 | 250 |
Assert.assertEquals(Integer.valueOf(2), tp.getStartMonth()); |
250 | 251 |
Assert.assertEquals(null, tp.getStartDay()); |
251 | 252 |
|
252 |
} |
|
253 |
String strYearMonth = "1894 Feb"; |
|
254 |
tp = TimePeriodParser.parseString(strYearMonth); |
|
255 |
assertNotNull(tp); |
|
256 |
Assert.assertEquals("1894 Feb", tp.toString()); |
|
257 |
Assert.assertEquals("1894", tp.getYear()); |
|
258 |
Assert.assertEquals(Integer.valueOf(1894), tp.getStartYear()); |
|
259 |
Assert.assertEquals(Integer.valueOf(2), tp.getStartMonth()); |
|
260 |
Assert.assertEquals(null, tp.getStartDay()); |
|
261 |
|
|
262 |
String strYearMonthDay = "1894 Feb 4"; |
|
263 |
tp = TimePeriodParser.parseString(strYearMonthDay); |
|
264 |
assertNotNull(tp); |
|
265 |
Assert.assertEquals("1894 Feb 4", tp.toString()); |
|
266 |
Assert.assertEquals("1894", tp.getYear()); |
|
267 |
Assert.assertEquals(Integer.valueOf(1894), tp.getStartYear()); |
|
268 |
Assert.assertEquals(Integer.valueOf(2), tp.getStartMonth()); |
|
269 |
Assert.assertEquals(Integer.valueOf(4), tp.getStartDay()); |
|
270 |
|
|
271 |
String strYearMonthDay2 = "1894 Feb 04"; |
|
272 |
tp = TimePeriodParser.parseString(strYearMonthDay2); |
|
273 |
assertNotNull(tp); |
|
274 |
Assert.assertEquals("1894 Feb 4", tp.toString()); |
|
275 |
Assert.assertEquals("1894", tp.getYear()); |
|
276 |
Assert.assertEquals(Integer.valueOf(1894), tp.getStartYear()); |
|
277 |
Assert.assertEquals(Integer.valueOf(2), tp.getStartMonth()); |
|
278 |
Assert.assertEquals(Integer.valueOf(4), tp.getStartDay()); |
|
253 | 279 |
|
280 |
String strMonth = "Feb"; |
|
281 |
tp = TimePeriodParser.parseString(strMonth); |
|
282 |
assertNotNull(tp); |
|
283 |
Assert.assertEquals("Feb", tp.toString()); |
|
284 |
Assert.assertEquals("", tp.getYear()); |
|
285 |
Assert.assertEquals(null, tp.getStartYear()); |
|
286 |
Assert.assertEquals(Integer.valueOf(2), tp.getStartMonth()); |
|
287 |
Assert.assertEquals(null, tp.getStartDay()); |
|
288 |
|
|
289 |
String strMonthDay = "Feb 4"; |
|
290 |
tp = TimePeriodParser.parseString(strMonthDay); |
|
291 |
assertNotNull(tp); |
|
292 |
Assert.assertEquals("Feb 4", tp.toString()); |
|
293 |
Assert.assertEquals("", tp.getYear()); |
|
294 |
Assert.assertEquals(null, tp.getStartYear()); |
|
295 |
Assert.assertEquals(Integer.valueOf(2), tp.getStartMonth()); |
|
296 |
Assert.assertEquals(Integer.valueOf(4), tp.getStartDay()); |
|
297 |
|
|
298 |
String strYearMonthDayPlus = "1982 Feb 4+"; |
|
299 |
tp = TimePeriodParser.parseString(strYearMonthDayPlus); |
|
300 |
assertNotNull(tp); |
|
301 |
Assert.assertEquals(strYearMonthDayPlus, tp.toString()); |
|
302 |
Assert.assertEquals("1982+", tp.getYear()); |
|
303 |
Assert.assertEquals(Integer.valueOf(1982), tp.getStartYear()); |
|
304 |
Assert.assertEquals(Integer.valueOf(2), tp.getStartMonth()); |
|
305 |
Assert.assertEquals(Integer.valueOf(4), tp.getStartDay()); |
|
306 |
Assert.assertTrue(tp.isContinued()); |
|
307 |
} |
|
254 | 308 |
|
255 | 309 |
@Test |
256 | 310 |
public void testParseVerbatim() { |
... | ... | |
314 | 368 |
String strDate = "01.12.1957+"; |
315 | 369 |
TimePeriod tp = TimePeriodParser.parseString(strDate); |
316 | 370 |
Assert.assertTrue(tp.isContinued()); |
317 |
Assert.assertEquals("1.12.1957+", tp.toString());
|
|
371 |
Assert.assertEquals("1957 Dec 1+", tp.toString());
|
|
318 | 372 |
Assert.assertEquals(Integer.valueOf(1957), tp.getStartYear()); |
319 | 373 |
Assert.assertEquals(Integer.valueOf(12), tp.getStartMonth()); |
320 | 374 |
Assert.assertEquals(Integer.valueOf(1), tp.getStartDay()); |
... | ... | |
331 | 385 |
|
332 | 386 |
strDate = "24 Aug. 1957+"; |
333 | 387 |
tp = TimePeriodParser.parseString(strDate); |
334 |
Assert.assertEquals("24.8.1957+", tp.toString());
|
|
388 |
Assert.assertEquals("1957 Aug 24+", tp.toString());
|
|
335 | 389 |
Assert.assertTrue(tp.isContinued()); |
336 | 390 |
Assert.assertEquals("1957+", tp.getYear()); |
337 | 391 |
Assert.assertEquals(Integer.valueOf(1957), tp.getStartYear()); |
... | ... | |
340 | 394 |
|
341 | 395 |
String strSlashDate = "31/12/2015+"; |
342 | 396 |
tp = TimePeriodParser.parseString(strSlashDate); |
343 |
Assert.assertEquals("31.12.2015+", tp.toString());
|
|
397 |
Assert.assertEquals("2015 Dec 31+", tp.toString());
|
|
344 | 398 |
Assert.assertTrue(tp.isContinued()); |
345 | 399 |
Assert.assertEquals("2015+", tp.getYear()); |
346 | 400 |
Assert.assertEquals(Integer.valueOf(2015), tp.getStartYear()); |
347 | 401 |
Assert.assertEquals(Integer.valueOf(12), tp.getStartMonth()); |
348 | 402 |
Assert.assertEquals(Integer.valueOf(31), tp.getStartDay()); |
349 | 403 |
Assert.assertNull(tp.getEnd()); |
350 |
|
|
351 | 404 |
} |
352 | 405 |
|
353 | 406 |
|
Also available in: Unified diff
ref #9071, ref #6276 Change TimePeriodFormatting to YYYY-MMM-DD