Changed JRE 6 dependent code to its JRE 5 equivalent

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@947842 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Josh Micich 2010-05-24 22:41:51 +00:00
parent 046c73ba82
commit b9e43015df
2 changed files with 22 additions and 23 deletions

View File

@ -20,6 +20,7 @@ package org.apache.poi.hssf.record.formula.functions;
import java.text.DecimalFormatSymbols; import java.text.DecimalFormatSymbols;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.GregorianCalendar; import java.util.GregorianCalendar;
import java.util.Locale;
import junit.framework.TestCase; import junit.framework.TestCase;
import org.apache.poi.hssf.record.formula.eval.ErrorEval; import org.apache.poi.hssf.record.formula.eval.ErrorEval;
@ -34,7 +35,7 @@ import org.apache.poi.hssf.record.formula.eval.StringEval;
*/ */
public final class TestText extends TestCase { public final class TestText extends TestCase {
private static final TextFunction T = null; private static final TextFunction T = null;
public void testTextWithStringFirstArg() { public void testTextWithStringFirstArg() {
ValueEval strArg = new StringEval("abc"); ValueEval strArg = new StringEval("abc");
@ -43,32 +44,32 @@ public final class TestText extends TestCase {
ValueEval result = T.TEXT.evaluate(args, -1, (short)-1); ValueEval result = T.TEXT.evaluate(args, -1, (short)-1);
assertEquals(ErrorEval.VALUE_INVALID, result); assertEquals(ErrorEval.VALUE_INVALID, result);
} }
public void testTextWithDeciamlFormatSecondArg() { public void testTextWithDeciamlFormatSecondArg() {
ValueEval numArg = new NumberEval(321321.321); ValueEval numArg = new NumberEval(321321.321);
ValueEval formatArg = new StringEval("#,###.00000"); ValueEval formatArg = new StringEval("#,###.00000");
ValueEval[] args = { numArg, formatArg }; ValueEval[] args = { numArg, formatArg };
ValueEval result = T.TEXT.evaluate(args, -1, (short)-1); ValueEval result = T.TEXT.evaluate(args, -1, (short)-1);
char groupSeparator = DecimalFormatSymbols.getInstance().getGroupingSeparator(); char groupSeparator = new DecimalFormatSymbols(Locale.getDefault()).getGroupingSeparator();
char decimalSeparator = DecimalFormatSymbols.getInstance().getDecimalSeparator(); char decimalSeparator = new DecimalFormatSymbols(Locale.getDefault()).getDecimalSeparator();
ValueEval testResult = new StringEval("321" + groupSeparator + "321" + decimalSeparator + "32100"); ValueEval testResult = new StringEval("321" + groupSeparator + "321" + decimalSeparator + "32100");
assertEquals(testResult.toString(), result.toString()); assertEquals(testResult.toString(), result.toString());
numArg = new NumberEval(321.321); numArg = new NumberEval(321.321);
formatArg = new StringEval("00000.00000"); formatArg = new StringEval("00000.00000");
args[0] = numArg; args[0] = numArg;
args[1] = formatArg; args[1] = formatArg;
result = T.TEXT.evaluate(args, -1, (short)-1); result = T.TEXT.evaluate(args, -1, (short)-1);
testResult = new StringEval("00321" + decimalSeparator + "32100"); testResult = new StringEval("00321" + decimalSeparator + "32100");
assertEquals(testResult.toString(), result.toString()); assertEquals(testResult.toString(), result.toString());
formatArg = new StringEval("$#.#"); formatArg = new StringEval("$#.#");
args[1] = formatArg; args[1] = formatArg;
result = T.TEXT.evaluate(args, -1, (short)-1); result = T.TEXT.evaluate(args, -1, (short)-1);
testResult = new StringEval("$321" + decimalSeparator + "3"); testResult = new StringEval("$321" + decimalSeparator + "3");
assertEquals(testResult.toString(), result.toString()); assertEquals(testResult.toString(), result.toString());
} }
public void testTextWithFractionFormatSecondArg() { public void testTextWithFractionFormatSecondArg() {
ValueEval numArg = new NumberEval(321.321); ValueEval numArg = new NumberEval(321.321);
@ -77,20 +78,20 @@ public final class TestText extends TestCase {
ValueEval result = T.TEXT.evaluate(args, -1, (short)-1); ValueEval result = T.TEXT.evaluate(args, -1, (short)-1);
ValueEval testResult = new StringEval("321 1/3"); ValueEval testResult = new StringEval("321 1/3");
assertEquals(testResult.toString(), result.toString()); assertEquals(testResult.toString(), result.toString());
formatArg = new StringEval("# #/##"); formatArg = new StringEval("# #/##");
args[1] = formatArg; args[1] = formatArg;
result = T.TEXT.evaluate(args, -1, (short)-1); result = T.TEXT.evaluate(args, -1, (short)-1);
testResult = new StringEval("321 26/81"); testResult = new StringEval("321 26/81");
assertEquals(testResult.toString(), result.toString()); assertEquals(testResult.toString(), result.toString());
formatArg = new StringEval("#/##"); formatArg = new StringEval("#/##");
args[1] = formatArg; args[1] = formatArg;
result = T.TEXT.evaluate(args, -1, (short)-1); result = T.TEXT.evaluate(args, -1, (short)-1);
testResult = new StringEval("26027/81"); testResult = new StringEval("26027/81");
assertEquals(testResult.toString(), result.toString()); assertEquals(testResult.toString(), result.toString());
} }
public void testTextWithDateFormatSecondArg() { public void testTextWithDateFormatSecondArg() {
ValueEval numArg = new NumberEval(321.321); ValueEval numArg = new NumberEval(321.321);
@ -99,16 +100,14 @@ public final class TestText extends TestCase {
ValueEval result = T.TEXT.evaluate(args, -1, (short)-1); ValueEval result = T.TEXT.evaluate(args, -1, (short)-1);
ValueEval testResult = new StringEval("16:11:1900 07:42:14"); ValueEval testResult = new StringEval("16:11:1900 07:42:14");
assertEquals(testResult.toString(), result.toString()); assertEquals(testResult.toString(), result.toString());
// this line is intended to compute how "November" would look like in the current locale // this line is intended to compute how "November" would look like in the current locale
String november = new SimpleDateFormat("MMMM").format(new GregorianCalendar(2010,10,15).getTime()); String november = new SimpleDateFormat("MMMM").format(new GregorianCalendar(2010,10,15).getTime());
formatArg = new StringEval("MMMM dd, yyyy"); formatArg = new StringEval("MMMM dd, yyyy");
args[1] = formatArg; args[1] = formatArg;
result = T.TEXT.evaluate(args, -1, (short)-1); result = T.TEXT.evaluate(args, -1, (short)-1);
testResult = new StringEval(november + " 16, 1900"); testResult = new StringEval(november + " 16, 1900");
assertEquals(testResult.toString(), result.toString()); assertEquals(testResult.toString(), result.toString());
} }
} }

View File

@ -104,7 +104,7 @@ public class CellFormatTestBase extends TestCase {
String format = row.getCell(1).getStringCellValue(); String format = row.getCell(1).getStringCellValue();
String testCategoryList = row.getCell(3).getStringCellValue(); String testCategoryList = row.getCell(3).getStringCellValue();
boolean byCategory = runByCategory(runCategories, testCategoryList); boolean byCategory = runByCategory(runCategories, testCategoryList);
if ((!expectedText.isEmpty() || !format.isEmpty()) && byCategory) { if ((expectedText.length() > 0 || format.length() > 0) && byCategory) {
Cell cell = row.getCell(2); Cell cell = row.getCell(2);
tryFormat(r, expectedText, format, valueGetter, cell); tryFormat(r, expectedText, format, valueGetter, cell);
} }
@ -290,4 +290,4 @@ public class CellFormatTestBase extends TestCase {
" = \"" + actual + "\" [not \"" + expected + "\"]"); " = \"" + actual + "\" [not \"" + expected + "\"]");
} }
} }
} }