mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Cleanup (pointless test dropped)
This commit is contained in:
@@ -26,10 +26,9 @@ import java.util.Date;
|
||||
import java.util.GregorianCalendar;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
public class DateFormatUtilTest {
|
||||
private static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("dd.MM.yyyy hh.mm.ss");
|
||||
@SuppressWarnings("SpellCheckingInspection") private static final DateFormat DATE_FORMAT = new SimpleDateFormat("dd.MM.yyyy hh.mm.ss");
|
||||
|
||||
@Test
|
||||
public void testBasics() throws ParseException {
|
||||
@@ -49,30 +48,24 @@ public class DateFormatUtilTest {
|
||||
if (SystemInfo.isMac) {
|
||||
assertEquals("17:10", DateFormatUtil.formatTime(Clock.getTime()));
|
||||
assertEquals("17:10:15", DateFormatUtil.formatTimeWithSeconds(Clock.getTime()));
|
||||
assertEquals("17:10:15", DateFormatUtil.formatTimeWithSeconds(new Date(Clock.getTime())));
|
||||
}
|
||||
else {
|
||||
assertEquals(DateFormat.getTimeInstance(DateFormat.SHORT).format(Clock.getTime()),
|
||||
DateFormatUtil.formatTime(Clock.getTime()));
|
||||
assertEquals(DateFormat.getTimeInstance(DateFormat.MEDIUM).format(Clock.getTime()),
|
||||
DateFormatUtil.formatTimeWithSeconds(Clock.getTime()));
|
||||
DateFormatUtil.formatTimeWithSeconds(new Date(Clock.getTime())));
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testPrettyDateTime() throws ParseException {
|
||||
Clock.setTime(2004, 11, 10, 17, 0);
|
||||
|
||||
doTestDateTime("Moments ago", "10.12.2004 16.59.31");
|
||||
doTestDateTime("A minute ago", "10.12.2004 16.59.29");
|
||||
doTestDateTime("5 minutes ago", "10.12.2004 16.55.00");
|
||||
doTestDateTime("1 hour ago", "10.12.2004 16.00.00");
|
||||
doTestDateTime("Today " + DateFormatUtil.formatTime(DATE_FORMAT.parse("10.12.2004 15.55.00")), "10.12.2004 15.55.00");
|
||||
doTestDateTime("Yesterday " + DateFormatUtil.formatTime(DATE_FORMAT.parse("09.12.2004 15.00.00")), "09.12.2004 15.00.00");
|
||||
|
||||
doTestDateTime(DateFormatUtil.formatDateTime(DATE_FORMAT.parse("08.12.2004 15.00.00")), "08.12.2004 15.00.00");
|
||||
doTestDateTime(DateFormatUtil.formatDateTime(DATE_FORMAT.parse("07.12.2004 15.00.00")), "07.12.2004 15.00.00");
|
||||
|
||||
doTestDateTime("Today " + DateFormatUtil.formatTime(DATE_FORMAT.parse("10.12.2004 19.00.00")), "10.12.2004 19.00.00");
|
||||
|
||||
Clock.setTime(2004, 0, 1, 15, 53);
|
||||
@@ -80,6 +73,18 @@ public class DateFormatUtilTest {
|
||||
doTestDateTime("Yesterday " + DateFormatUtil.formatTime(DATE_FORMAT.parse("31.12.2003 15.00.00")), "31.12.2003 15.00.00");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testAboutDialogDataFormatter() {
|
||||
assertEquals("December 12, 2012", DateFormatUtil.formatAboutDialogDate(date(2012, 12, 12, 15, 35, 12)));
|
||||
assertEquals("January 1, 1999", DateFormatUtil.formatAboutDialogDate(date(1999, 1, 1, 0, 0, 0)));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testFormatFrequency() {
|
||||
assertEquals("Once in 2 minutes", DateFormatUtil.formatFrequency(2 * 60 * 1000));
|
||||
assertEquals("Once in a few moments", DateFormatUtil.formatFrequency(1000));
|
||||
}
|
||||
|
||||
private static void doTestPrettyDate(String expected, String date) throws ParseException {
|
||||
assertEquals(expected, DateFormatUtil.formatPrettyDate(DATE_FORMAT.parse(date)));
|
||||
}
|
||||
@@ -91,159 +96,4 @@ public class DateFormatUtilTest {
|
||||
private static Date date(final int year, final int month, final int day, final int hour, final int minute, final int second) {
|
||||
return new GregorianCalendar(year, month - 1, day, hour, minute, second).getTime();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testConvertingMacToJavaPattern() throws Throwable {
|
||||
Clock.setTime(date(2004, 2, 5, 16, 6, 7).getTime() + 8);
|
||||
|
||||
String mon = new SimpleDateFormat("MMM").format(Clock.getTime());
|
||||
String month = new SimpleDateFormat("MMMMM").format(Clock.getTime());
|
||||
String weekd = new SimpleDateFormat("EEE").format(Clock.getTime());
|
||||
String weekday = new SimpleDateFormat("EEEEE").format(Clock.getTime());
|
||||
|
||||
assertConvertedFormat("%y %Y", "04 2004");
|
||||
assertConvertedFormat("%b %B %m", mon + " " + month + " 02");
|
||||
assertConvertedFormat("%d %e %j", "05 5 036");
|
||||
assertConvertedFormat("%a %A %w", weekd + " " + weekday + " " + weekd);
|
||||
|
||||
assertConvertedFormat("%H %I", "16 04");
|
||||
assertConvertedFormat("%M %S %F %p", "06 07 008 PM");
|
||||
|
||||
assertConvertedFormatMatches("%z %Z", "\\+\\d{4} \\w{3}");
|
||||
|
||||
assertConvertedFormat(" foo bar ", " foo bar ");
|
||||
assertConvertedFormat(" 'foo''a'a'' '' ' ", " 'foo''a'a'' '' ' ");
|
||||
assertConvertedFormat(" '%a''%a'%a'' '' ' '%a ", " '" + weekd + "''" + weekd + "'" + weekd + "'' '' ' '" + weekd + " ");
|
||||
assertConvertedFormat("'a'", "'a'");
|
||||
assertConvertedFormat("'", "'");
|
||||
assertConvertedFormat("''", "''");
|
||||
assertConvertedFormat("a", "a");
|
||||
assertConvertedFormat(" ", " ");
|
||||
assertConvertedFormat("%1", "?%1?");
|
||||
assertConvertedFormat("", "");
|
||||
|
||||
assertConvertedFormat("%", "");
|
||||
}
|
||||
|
||||
private static void assertConvertedFormat(String pattern, String expected) throws Throwable {
|
||||
String converted = convertMacPattern(pattern);
|
||||
try {
|
||||
assertEquals(expected, new SimpleDateFormat(converted).format(Clock.getTime()));
|
||||
}
|
||||
catch (Throwable e) {
|
||||
System.out.println("cannot format with [" + converted + "]");
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
private static void assertConvertedFormatMatches(String pattern, String expectedPattern) throws Throwable {
|
||||
String converted = convertMacPattern(pattern);
|
||||
try {
|
||||
String actual = new SimpleDateFormat(converted).format(Clock.getTime());
|
||||
assertTrue(actual, actual.matches(expectedPattern));
|
||||
}
|
||||
catch (Throwable e) {
|
||||
System.out.println("cannot format with [" + converted + "]");
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
private static String convertMacPattern(String macPattern) {
|
||||
StringBuilder b = new StringBuilder();
|
||||
boolean isSpecial = false;
|
||||
boolean isText = false;
|
||||
|
||||
for (int i = 0; i < macPattern.length(); i++) {
|
||||
char c = macPattern.charAt(i);
|
||||
if (isSpecial) {
|
||||
String replacement = null;
|
||||
if (c == '%') replacement = "$";
|
||||
|
||||
// year
|
||||
if (c == 'y') replacement = "yy";
|
||||
if (c == 'Y') replacement = "yyyy";
|
||||
|
||||
// month
|
||||
if (c == 'm') replacement = "MM";
|
||||
if (c == 'b') replacement = "MMM";
|
||||
if (c == 'B') replacement = "MMMMM";
|
||||
|
||||
// day on month
|
||||
if (c == 'e') replacement = "d";
|
||||
if (c == 'd') replacement = "dd";
|
||||
|
||||
// day of year
|
||||
if (c == 'j') replacement = "DDD";
|
||||
|
||||
// day of week
|
||||
if (c == 'w') replacement = "E"; // SimpleDateFormat doesn't support formatting weekday as a number
|
||||
if (c == 'a') replacement = "EEE";
|
||||
if (c == 'A') replacement = "EEEEE";
|
||||
|
||||
// hours
|
||||
if (c == 'H') replacement = "HH"; // 0-24
|
||||
//if (c == 'H') replacement = "k"; // 1-24
|
||||
//if (c == 'I') replacement = "K"; // 0-11
|
||||
if (c == 'I') replacement = "hh"; // 1-12
|
||||
|
||||
//minute
|
||||
if (c == 'M') replacement = "mm";
|
||||
//second
|
||||
if (c == 'S') replacement = "ss";
|
||||
//millisecond
|
||||
if (c == 'F') replacement = "SSS";
|
||||
|
||||
//millisecond
|
||||
if (c == 'p') replacement = "a";
|
||||
|
||||
//millisecond
|
||||
if (c == 'Z') replacement = "zzz";
|
||||
//millisecond
|
||||
if (c == 'z') replacement = "Z";
|
||||
|
||||
//todo if (c == 'c') replacement = "MMMMM";, x, X
|
||||
|
||||
if (replacement == null) replacement = "'?%" + c + "?'";
|
||||
|
||||
b.append(replacement);
|
||||
isSpecial = false;
|
||||
}
|
||||
else {
|
||||
isSpecial = c == '%';
|
||||
if (isSpecial) {
|
||||
isText = false;
|
||||
}
|
||||
else {
|
||||
if (isText) {
|
||||
if (c == '\'' || Character.isWhitespace(c)) b.append('\'');
|
||||
isText = !Character.isWhitespace(c);
|
||||
}
|
||||
else {
|
||||
if (c == '\'' || !Character.isWhitespace(c)) b.append('\'');
|
||||
isText = !Character.isWhitespace(c) && c != '\'';
|
||||
}
|
||||
b.append(c);
|
||||
|
||||
if (isText && i == macPattern.length() - 1) b.append('\'');
|
||||
}
|
||||
}
|
||||
}
|
||||
return b.toString();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testAboutDialogDataFormatter() {
|
||||
assertEquals("December 12, 2012",
|
||||
DateFormatUtil.formatAboutDialogDate(date(2012, 12, 12, 15, 35, 12)));
|
||||
assertEquals("January 1, 1999",
|
||||
DateFormatUtil.formatAboutDialogDate(date(1999, 1, 1, 0, 0, 0)));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testFormatFrequency() {
|
||||
assertEquals("Once in 2 minutes",
|
||||
DateFormatUtil.formatFrequency(2 * 60 * 1000));
|
||||
assertEquals("Once in a few moments",
|
||||
DateFormatUtil.formatFrequency(1000));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user