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.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
import java.util.Map;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.HashMap;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
import org.apache.poi.POITextExtractor;
|
||||
@ -133,15 +136,18 @@ public class TestXSSFExcelExtractor extends TestCase {
|
||||
ExcelExtractor ole2Extractor =
|
||||
new ExcelExtractor(HSSFTestDataSamples.openSampleWorkbook("SampleSS.xls"));
|
||||
|
||||
POITextExtractor[] extractors =
|
||||
new POITextExtractor[] { ooxmlExtractor, ole2Extractor };
|
||||
Map<String, POITextExtractor> extractors = new HashMap<String, POITextExtractor>();
|
||||
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]", "");
|
||||
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);
|
||||
Matcher m = pattern.matcher(text);
|
||||
assertTrue(m.matches());
|
||||
assertTrue(filename, m.matches());
|
||||
}
|
||||
|
||||
ole2Extractor.close();
|
||||
@ -161,8 +167,8 @@ public class TestXSSFExcelExtractor extends TestCase {
|
||||
XSSFExcelExtractor extractor = getExtractor(sampleName);
|
||||
String text = extractor.getText();
|
||||
|
||||
assertTrue("Unable to find expected word in text from " + sampleName + "\n" + text, text.contains("testdoc"));
|
||||
assertContains(text, "test phrase");
|
||||
assertContains(sampleName, text, "testdoc");
|
||||
assertContains(sampleName, text, "test phrase");
|
||||
|
||||
extractor.close();
|
||||
}
|
||||
@ -221,9 +227,9 @@ public class TestXSSFExcelExtractor extends TestCase {
|
||||
try {
|
||||
extractor.setFormulasNotResults(true);
|
||||
String text = extractor.getText();
|
||||
assertTrue(text.indexOf("Line 1") > -1);
|
||||
assertTrue(text.indexOf("Line 2") > -1);
|
||||
assertTrue(text.indexOf("Line 3") > -1);
|
||||
assertContains(text, "Line 1");
|
||||
assertContains(text, "Line 2");
|
||||
assertContains(text, "Line 3");
|
||||
} finally {
|
||||
extractor.close();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user