Merge branch 'parameterized-FastDateParser_TimeZoneStrategyTest'
This commit is contained in:
commit
3178494ca1
5
pom.xml
5
pom.xml
|
@ -527,6 +527,11 @@
|
|||
<artifactId>junit-jupiter-api</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.jupiter</groupId>
|
||||
<artifactId>junit-jupiter-params</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.jupiter</groupId>
|
||||
<artifactId>junit-jupiter-engine</artifactId>
|
||||
|
|
|
@ -16,8 +16,9 @@
|
|||
*/
|
||||
package org.apache.commons.lang3.time;
|
||||
|
||||
import static org.junit.Assert.assertNotEquals;
|
||||
import static org.junit.Assert.fail;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.params.ParameterizedTest;
|
||||
import org.junit.jupiter.params.provider.MethodSource;
|
||||
|
||||
import java.text.DateFormatSymbols;
|
||||
import java.text.ParseException;
|
||||
|
@ -25,39 +26,39 @@ import java.util.Date;
|
|||
import java.util.Locale;
|
||||
import java.util.TimeZone;
|
||||
|
||||
import org.junit.Test;
|
||||
import static org.junit.jupiter.api.Assertions.assertNotEquals;
|
||||
import static org.junit.jupiter.api.Assertions.fail;
|
||||
|
||||
public class FastDateParser_TimeZoneStrategyTest {
|
||||
class FastDateParser_TimeZoneStrategyTest {
|
||||
|
||||
@Test
|
||||
public void testTimeZoneStrategyPattern() {
|
||||
for(final Locale locale : Locale.getAvailableLocales()) {
|
||||
final FastDateParser parser = new FastDateParser("z", TimeZone.getDefault(), locale);
|
||||
final String[][] zones = DateFormatSymbols.getInstance(locale).getZoneStrings();
|
||||
for(final String[] zone : zones) {
|
||||
for(int t = 1; t<zone.length; ++t) {
|
||||
final String tzDisplay = zone[t];
|
||||
if (tzDisplay == null) {
|
||||
break;
|
||||
}
|
||||
try {
|
||||
parser.parse(tzDisplay);
|
||||
} catch(final Exception ex) {
|
||||
fail("'" + tzDisplay + "'"
|
||||
+ " Locale: '" + locale.getDisplayName() + "'"
|
||||
+ " TimeZone: " + zone[0]
|
||||
+ " offset: " + t
|
||||
+ " defaultLocale: " + Locale.getDefault()
|
||||
+ " defaultTimeZone: " + TimeZone.getDefault().getDisplayName()
|
||||
);
|
||||
}
|
||||
@ParameterizedTest
|
||||
@MethodSource("java.util.Locale#getAvailableLocales")
|
||||
void testTimeZoneStrategyPattern(final Locale locale) {
|
||||
final FastDateParser parser = new FastDateParser("z", TimeZone.getDefault(), locale);
|
||||
final String[][] zones = DateFormatSymbols.getInstance(locale).getZoneStrings();
|
||||
for (final String[] zone : zones) {
|
||||
for (int t = 1; t < zone.length; ++t) {
|
||||
final String tzDisplay = zone[t];
|
||||
if (tzDisplay == null) {
|
||||
break;
|
||||
}
|
||||
try {
|
||||
parser.parse(tzDisplay);
|
||||
} catch (final Exception ex) {
|
||||
fail("'" + tzDisplay + "'"
|
||||
+ " Locale: '" + locale.getDisplayName() + "'"
|
||||
+ " TimeZone: " + zone[0]
|
||||
+ " offset: " + t
|
||||
+ " defaultLocale: " + Locale.getDefault()
|
||||
+ " defaultTimeZone: " + TimeZone.getDefault().getDisplayName()
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testLang1219() throws ParseException {
|
||||
void testLang1219() throws ParseException {
|
||||
final FastDateParser parser = new FastDateParser("dd.MM.yyyy HH:mm:ss z", TimeZone.getDefault(), Locale.GERMAN);
|
||||
|
||||
final Date summer = parser.parse("26.10.2014 02:00:00 MESZ");
|
||||
|
|
Loading…
Reference in New Issue