improve unit test error messages
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1791445 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
ef8c9329cf
commit
0acf44d3dc
@ -25,6 +25,9 @@ import static org.apache.poi.POITestCase.assertNotContained;
|
|||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Map.Entry;
|
||||||
|
import java.util.HashMap;
|
||||||
|
|
||||||
import junit.framework.TestCase;
|
import junit.framework.TestCase;
|
||||||
import org.apache.poi.POITextExtractor;
|
import org.apache.poi.POITextExtractor;
|
||||||
@ -133,15 +136,18 @@ public class TestXSSFExcelExtractor extends TestCase {
|
|||||||
ExcelExtractor ole2Extractor =
|
ExcelExtractor ole2Extractor =
|
||||||
new ExcelExtractor(HSSFTestDataSamples.openSampleWorkbook("SampleSS.xls"));
|
new ExcelExtractor(HSSFTestDataSamples.openSampleWorkbook("SampleSS.xls"));
|
||||||
|
|
||||||
POITextExtractor[] extractors =
|
Map<String, POITextExtractor> extractors = new HashMap<String, POITextExtractor>();
|
||||||
new POITextExtractor[] { ooxmlExtractor, ole2Extractor };
|
extractors.put("SampleSS.xlsx", ooxmlExtractor);
|
||||||
|
extractors.put("SampleSS.xls", ole2Extractor);
|
||||||
|
|
||||||
for (POITextExtractor extractor : extractors) {
|
for (final Entry<String, POITextExtractor> e : extractors.entrySet()) {
|
||||||
|
String filename = e.getKey();
|
||||||
|
POITextExtractor extractor = e.getValue();
|
||||||
String text = extractor.getText().replaceAll("[\r\t]", "");
|
String text = extractor.getText().replaceAll("[\r\t]", "");
|
||||||
assertStartsWith(text, "First Sheet\nTest spreadsheet\n2nd row2nd row 2nd column\n");
|
assertStartsWith(filename, text, "First Sheet\nTest spreadsheet\n2nd row2nd row 2nd column\n");
|
||||||
Pattern pattern = Pattern.compile(".*13(\\.0+)?\\s+Sheet3.*", Pattern.DOTALL);
|
Pattern pattern = Pattern.compile(".*13(\\.0+)?\\s+Sheet3.*", Pattern.DOTALL);
|
||||||
Matcher m = pattern.matcher(text);
|
Matcher m = pattern.matcher(text);
|
||||||
assertTrue(m.matches());
|
assertTrue(filename, m.matches());
|
||||||
}
|
}
|
||||||
|
|
||||||
ole2Extractor.close();
|
ole2Extractor.close();
|
||||||
@ -161,8 +167,8 @@ public class TestXSSFExcelExtractor extends TestCase {
|
|||||||
XSSFExcelExtractor extractor = getExtractor(sampleName);
|
XSSFExcelExtractor extractor = getExtractor(sampleName);
|
||||||
String text = extractor.getText();
|
String text = extractor.getText();
|
||||||
|
|
||||||
assertTrue("Unable to find expected word in text from " + sampleName + "\n" + text, text.contains("testdoc"));
|
assertContains(sampleName, text, "testdoc");
|
||||||
assertContains(text, "test phrase");
|
assertContains(sampleName, text, "test phrase");
|
||||||
|
|
||||||
extractor.close();
|
extractor.close();
|
||||||
}
|
}
|
||||||
@ -221,9 +227,9 @@ public class TestXSSFExcelExtractor extends TestCase {
|
|||||||
try {
|
try {
|
||||||
extractor.setFormulasNotResults(true);
|
extractor.setFormulasNotResults(true);
|
||||||
String text = extractor.getText();
|
String text = extractor.getText();
|
||||||
assertTrue(text.indexOf("Line 1") > -1);
|
assertContains(text, "Line 1");
|
||||||
assertTrue(text.indexOf("Line 2") > -1);
|
assertContains(text, "Line 2");
|
||||||
assertTrue(text.indexOf("Line 3") > -1);
|
assertContains(text, "Line 3");
|
||||||
} finally {
|
} finally {
|
||||||
extractor.close();
|
extractor.close();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user