2
0
Fork 0
mirror of https://github.com/ethauvin/rife2.git synced 2025-05-01 02:58:12 -07:00

Test fixes

This commit is contained in:
Geert Bevin 2022-12-31 18:56:47 -05:00
parent 484718f118
commit 8ebfe86a8d
2 changed files with 83 additions and 73 deletions

View file

@ -1120,7 +1120,12 @@ public class RifeConfig {
public ToolsConfig setDefaultCountry(String countryCode) { public ToolsConfig setDefaultCountry(String countryCode) {
if (null != countryCode && if (null != countryCode &&
countryCode.isEmpty()) throw new IllegalArgumentException("countryCode can't be empty."); countryCode.isEmpty()) throw new IllegalArgumentException("countryCode can't be empty.");
defaultCountry_ = countryCode;
if (null == countryCode) {
defaultCountry_ = DEFAULT_DEFAULT_COUNTRY;
} else {
defaultCountry_ = countryCode;
}
return this; return this;
} }

View file

@ -9,6 +9,7 @@ import rife.config.exceptions.DateFormatInitializationException;
import java.lang.reflect.InvocationTargetException; import java.lang.reflect.InvocationTargetException;
import java.text.DateFormat; import java.text.DateFormat;
import java.util.Calendar;
import java.util.GregorianCalendar; import java.util.GregorianCalendar;
import static org.junit.jupiter.api.Assertions.*; import static org.junit.jupiter.api.Assertions.*;
@ -16,90 +17,94 @@ import static org.junit.jupiter.api.Assertions.*;
public class TestRifeConfig { public class TestRifeConfig {
@Test @Test
void testShortDateFormat() { void testShortDateFormat() {
switchLocale("US", "EN");
DateFormat sf = RifeConfig.tools().getDefaultShortDateFormat();
String formatted = sf.format(new GregorianCalendar(2004, 7, 31, 15, 53).getTime());
assertEquals(formatted, "8/31/04");
switchLocale("BE", "NL");
sf = RifeConfig.tools().getDefaultShortDateFormat();
formatted = sf.format(new GregorianCalendar(2004, 7, 31, 15, 53).getTime());
assertEquals(formatted, "31/08/2004");
switchLocale(null, "ES");
sf = RifeConfig.tools().getDefaultShortDateFormat();
formatted = sf.format(new GregorianCalendar(2004, 7, 31, 15, 53).getTime());
assertEquals(formatted, "31/8/04");
switchDates("EEE, MMM d, yyyy", "EEE, d MMM yyyy HH:mm:ss");
sf = RifeConfig.tools().getDefaultShortDateFormat();
formatted = sf.format(new GregorianCalendar(2004, 7, 31, 15, 53).getTime());
assertEquals(formatted, "mar, ago 31, 2004");
try { try {
switchDates("vvvv 999 uuuu", "vvvv, 82.2 cccc"); switchLocale("US", "EN");
var sf = RifeConfig.tools().getDefaultShortDateFormat();
var formatted = sf.format(new GregorianCalendar(2004, Calendar.AUGUST, 31, 15, 53).getTime());
assertEquals(formatted, "8/31/04");
switchLocale("BE", "NL");
sf = RifeConfig.tools().getDefaultShortDateFormat(); sf = RifeConfig.tools().getDefaultShortDateFormat();
formatted = sf.format(new GregorianCalendar(2004, 7, 31, 15, 53).getTime()); formatted = sf.format(new GregorianCalendar(2004, Calendar.AUGUST, 31, 15, 53).getTime());
fail();
} catch (DateFormatInitializationException e) {
assertTrue(true);
}
switchLocale(null, "EN"); assertEquals(formatted, "31/08/2004");
switchDates(null, null);
switchLocale("ES", "ES");
sf = RifeConfig.tools().getDefaultShortDateFormat();
formatted = sf.format(new GregorianCalendar(2004, Calendar.AUGUST, 31, 15, 53).getTime());
assertEquals(formatted, "31/8/04");
switchDates("EEE, MMM d, yyyy", "EEE, d MMM yyyy HH:mm:ss");
sf = RifeConfig.tools().getDefaultShortDateFormat();
formatted = sf.format(new GregorianCalendar(2004, Calendar.AUGUST, 31, 15, 53).getTime());
assertEquals(formatted, "mar, ago 31, 2004");
try {
switchDates("vvvv 999 uuuu", "vvvv, 82.2 cccc");
sf = RifeConfig.tools().getDefaultShortDateFormat();
formatted = sf.format(new GregorianCalendar(2004, Calendar.AUGUST, 31, 15, 53).getTime());
fail();
} catch (DateFormatInitializationException e) {
assertTrue(true);
}
} finally {
switchLocale(null, "EN");
switchDates(null, null);
}
} }
@Test @Test
void testLongDateFormat() { void testLongDateFormat() {
switchLocale("US", "EN");
DateFormat sf = RifeConfig.tools().getDefaultLongDateFormat();
String formatted = sf.format(new GregorianCalendar(2004, 7, 31, 15, 53).getTime());
assertEquals(formatted, "Aug 31, 2004, 3:53 PM");
switchLocale("BE", "NL");
sf = RifeConfig.tools().getDefaultLongDateFormat();
formatted = sf.format(new GregorianCalendar(2004, 7, 31, 15, 53).getTime());
assertEquals(formatted, "31 aug. 2004 15:53");
switchLocale(null, "ES");
sf = RifeConfig.tools().getDefaultLongDateFormat();
formatted = sf.format(new GregorianCalendar(2004, 7, 31, 15, 53).getTime());
assertEquals(formatted, "31 ago 2004 15:53");
switchDates("EEE, MMM d, yyyy", "EEE, d MMM yyyy HH:mm:ss");
sf = RifeConfig.tools().getDefaultLongDateFormat();
formatted = sf.format(new GregorianCalendar(2004, 7, 31, 15, 53).getTime());
assertEquals(formatted, "mar, 31 ago 2004 14:53:00");
try { try {
switchDates("wwww 999 uuuu", "vvvv, 82.2 cccc"); switchLocale("US", "EN");
var sf = RifeConfig.tools().getDefaultLongDateFormat();
var formatted = sf.format(new GregorianCalendar(2004, Calendar.AUGUST, 31, 15, 53).getTime());
assertEquals(formatted, "Aug 31, 2004, 3:53 PM");
switchLocale("BE", "NL");
sf = RifeConfig.tools().getDefaultLongDateFormat(); sf = RifeConfig.tools().getDefaultLongDateFormat();
formatted = sf.format(new GregorianCalendar(2004, 7, 31, 15, 53).getTime()); formatted = sf.format(new GregorianCalendar(2004, Calendar.AUGUST, 31, 15, 53).getTime());
fail();
} catch (DateFormatInitializationException e) {
assertTrue(true);
}
switchLocale(null, "en"); assertEquals(formatted, "31 aug. 2004 15:53");
switchDates(null, null);
switchLocale("ES", "ES");
sf = RifeConfig.tools().getDefaultLongDateFormat();
formatted = sf.format(new GregorianCalendar(2004, Calendar.AUGUST, 31, 15, 53).getTime());
assertEquals(formatted, "31 ago 2004 15:53");
switchDates("EEE, MMM d, yyyy", "EEE, d MMM yyyy HH:mm:ss");
sf = RifeConfig.tools().getDefaultLongDateFormat();
formatted = sf.format(new GregorianCalendar(2004, Calendar.AUGUST, 31, 15, 53).getTime());
assertEquals(formatted, "mar, 31 ago 2004 14:53:00");
try {
switchDates("wwww 999 uuuu", "vvvv, 82.2 cccc");
sf = RifeConfig.tools().getDefaultLongDateFormat();
formatted = sf.format(new GregorianCalendar(2004, Calendar.AUGUST, 31, 15, 53).getTime());
fail();
} catch (DateFormatInitializationException e) {
assertTrue(true);
}
} finally {
switchLocale(null, "en");
switchDates(null, null);
}
} }
public static void switchLocale(String country, String language) { public static void switchLocale(String country, String language) {