import org.junit.Test;
public final class TestHPSFPropertiesExtractor {
- private static final POIDataSamples _samples = POIDataSamples.getHPSFInstance();
-
- @Test
- public void testNormalProperties() throws Exception {
- try (InputStream is = _samples.openResourceAsStream("TestMickey.doc");
- POIFSFileSystem fs = new POIFSFileSystem(is);
- HPSFPropertiesExtractor ext = new HPSFPropertiesExtractor(fs)) {
- // Check each bit in turn
- String summary = ext.getSummaryInformationText();
- String docSummary = ext.getDocumentSummaryInformationText();
-
- assertContains(summary, "TEMPLATE = Normal");
- assertContains(summary, "SUBJECT = sample subject");
- assertContains(docSummary, "MANAGER = sample manager");
- assertContains(docSummary, "COMPANY = sample company");
-
- // Now overall
- String text = ext.getText();
- assertContains(text, "TEMPLATE = Normal");
- assertContains(text, "SUBJECT = sample subject");
- assertContains(text, "MANAGER = sample manager");
- assertContains(text, "COMPANY = sample company");
- }
- }
-
- @Test
- public void testNormalUnicodeProperties() throws Exception {
-
- try (InputStream is = _samples.openResourceAsStream("TestUnicode.xls");
- POIFSFileSystem fs = new POIFSFileSystem(is);
- HPSFPropertiesExtractor ext = new HPSFPropertiesExtractor(fs)) {
- // Check each bit in turn
- String summary = ext.getSummaryInformationText();
- String docSummary = ext.getDocumentSummaryInformationText();
-
- assertContains(summary, "AUTHOR = marshall");
- assertContains(summary, "TITLE = Titel: \u00c4h");
- assertContains(docSummary, "COMPANY = Schreiner");
- assertContains(docSummary, "SCALE = false");
-
- // Now overall
- String text = ext.getText();
- assertContains(text, "AUTHOR = marshall");
- assertContains(text, "TITLE = Titel: \u00c4h");
- assertContains(text, "COMPANY = Schreiner");
- assertContains(text, "SCALE = false");
- }
- }
-
- @Test
- public void testCustomProperties() throws Exception {
- try (InputStream is = _samples.openResourceAsStream("TestMickey.doc");
- POIFSFileSystem fs = new POIFSFileSystem(is);
- HPSFPropertiesExtractor ext = new HPSFPropertiesExtractor(fs)) {
-
- // Custom properties are part of the document info stream
- String dinfText = ext.getDocumentSummaryInformationText();
- assertContains(dinfText, "Client = sample client");
- assertContains(dinfText, "Division = sample division");
-
- String text = ext.getText();
- assertContains(text, "Client = sample client");
- assertContains(text, "Division = sample division");
- }
- }
-
- @Test
- public void testConstructors() throws IOException {
- POIFSFileSystem fs;
- HSSFWorkbook wb;
- try {
- fs = new POIFSFileSystem(_samples.openResourceAsStream("TestUnicode.xls"));
- wb = new HSSFWorkbook(fs);
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
- ExcelExtractor excelExt = new ExcelExtractor(wb);
-
- final String fsText;
- HPSFPropertiesExtractor fsExt = new HPSFPropertiesExtractor(fs);
- fsExt.setFilesystem(null); // Don't close re-used test resources!
- try {
- fsText = fsExt.getText();
- } finally {
- fsExt.close();
- }
-
- final String hwText;
- HPSFPropertiesExtractor hwExt = new HPSFPropertiesExtractor(wb);
- hwExt.setFilesystem(null); // Don't close re-used test resources!
- try {
- hwText = hwExt.getText();
- } finally {
- hwExt.close();
- }
-
+ private static final POIDataSamples _samples = POIDataSamples.getHPSFInstance();
+
+ @Test
+ public void testNormalProperties() throws Exception {
+ try (InputStream is = _samples.openResourceAsStream("TestMickey.doc");
+ POIFSFileSystem fs = new POIFSFileSystem(is);
+ HPSFPropertiesExtractor ext = new HPSFPropertiesExtractor(fs)) {
+ // Check each bit in turn
+ String summary = ext.getSummaryInformationText();
+ String docSummary = ext.getDocumentSummaryInformationText();
+
+ assertContains(summary, "TEMPLATE = Normal");
+ assertContains(summary, "SUBJECT = sample subject");
+ assertContains(docSummary, "MANAGER = sample manager");
+ assertContains(docSummary, "COMPANY = sample company");
+
+ // Now overall
+ String text = ext.getText();
+ assertContains(text, "TEMPLATE = Normal");
+ assertContains(text, "SUBJECT = sample subject");
+ assertContains(text, "MANAGER = sample manager");
+ assertContains(text, "COMPANY = sample company");
+ }
+ }
+
+ @Test
+ public void testNormalUnicodeProperties() throws Exception {
+
+ try (InputStream is = _samples.openResourceAsStream("TestUnicode.xls");
+ POIFSFileSystem fs = new POIFSFileSystem(is);
+ HPSFPropertiesExtractor ext = new HPSFPropertiesExtractor(fs)) {
+ // Check each bit in turn
+ String summary = ext.getSummaryInformationText();
+ String docSummary = ext.getDocumentSummaryInformationText();
+
+ assertContains(summary, "AUTHOR = marshall");
+ assertContains(summary, "TITLE = Titel: \u00c4h");
+ assertContains(docSummary, "COMPANY = Schreiner");
+ assertContains(docSummary, "SCALE = false");
+
+ // Now overall
+ String text = ext.getText();
+ assertContains(text, "AUTHOR = marshall");
+ assertContains(text, "TITLE = Titel: \u00c4h");
+ assertContains(text, "COMPANY = Schreiner");
+ assertContains(text, "SCALE = false");
+ }
+ }
+
+ @Test
+ public void testCustomProperties() throws Exception {
+ try (InputStream is = _samples.openResourceAsStream("TestMickey.doc");
+ POIFSFileSystem fs = new POIFSFileSystem(is);
+ HPSFPropertiesExtractor ext = new HPSFPropertiesExtractor(fs)) {
+
+ // Custom properties are part of the document info stream
+ String dinfText = ext.getDocumentSummaryInformationText();
+ assertContains(dinfText, "Client = sample client");
+ assertContains(dinfText, "Division = sample division");
+
+ String text = ext.getText();
+ assertContains(text, "Client = sample client");
+ assertContains(text, "Division = sample division");
+ }
+ }
+
+ @Test
+ public void testConstructors() throws IOException {
+ POIFSFileSystem fs;
+ HSSFWorkbook wb;
+ try {
+ fs = new POIFSFileSystem(_samples.openResourceAsStream("TestUnicode.xls"));
+ wb = new HSSFWorkbook(fs);
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ ExcelExtractor excelExt = new ExcelExtractor(wb);
+
+ final String fsText;
+ HPSFPropertiesExtractor fsExt = new HPSFPropertiesExtractor(fs);
+ fsExt.setFilesystem(null); // Don't close re-used test resources!
+ try {
+ fsText = fsExt.getText();
+ } finally {
+ fsExt.close();
+ }
+
+ final String hwText;
+ HPSFPropertiesExtractor hwExt = new HPSFPropertiesExtractor(wb);
+ hwExt.setFilesystem(null); // Don't close re-used test resources!
+ try {
+ hwText = hwExt.getText();
+ } finally {
+ hwExt.close();
+ }
+
final String eeText;
HPSFPropertiesExtractor eeExt = new HPSFPropertiesExtractor(excelExt);
eeExt.setFilesystem(null); // Don't close re-used test resources!
wb.close();
}
- assertEquals(fsText, hwText);
- assertEquals(fsText, eeText);
-
- assertContains(fsText, "AUTHOR = marshall");
- assertContains(fsText, "TITLE = Titel: \u00c4h");
- }
-
- @Test
- public void test42726() throws IOException {
- try (HSSFWorkbook wb = HSSFTestDataSamples.openSampleWorkbook("42726.xls");
- HPSFPropertiesExtractor ext = new HPSFPropertiesExtractor(wb)) {
- String txt = ext.getText();
- assertContains(txt, "PID_AUTHOR");
- assertContains(txt, "PID_EDITTIME");
- assertContains(txt, "PID_REVNUMBER");
- assertContains(txt, "PID_THUMBNAIL");
- }
- }
-
- @Test
+ assertEquals(fsText, hwText);
+ assertEquals(fsText, eeText);
+
+ assertContains(fsText, "AUTHOR = marshall");
+ assertContains(fsText, "TITLE = Titel: \u00c4h");
+ }
+
+ @Test
+ public void test42726() throws IOException {
+ try (HSSFWorkbook wb = HSSFTestDataSamples.openSampleWorkbook("42726.xls");
+ HPSFPropertiesExtractor ext = new HPSFPropertiesExtractor(wb)) {
+ String txt = ext.getText();
+ assertContains(txt, "PID_AUTHOR");
+ assertContains(txt, "PID_EDITTIME");
+ assertContains(txt, "PID_REVNUMBER");
+ assertContains(txt, "PID_THUMBNAIL");
+ }
+ }
+
+ @Test
public void testThumbnail() throws Exception {
POIFSFileSystem fs = new POIFSFileSystem(_samples.openResourceAsStream("TestThumbnail.xls"));
HSSFWorkbook wb = new HSSFWorkbook(fs);
wb.close();
}
- @Test
+ @Test
public void test52258() throws Exception {
- try (InputStream is = _samples.openResourceAsStream("TestVisioWithCodepage.vsd");
- POIFSFileSystem fs = new POIFSFileSystem(is);
- HPSFPropertiesExtractor ext = new HPSFPropertiesExtractor(fs)) {
- assertNotNull(ext.getDocSummaryInformation());
- assertNotNull(ext.getDocumentSummaryInformationText());
- assertNotNull(ext.getSummaryInformation());
- assertNotNull(ext.getSummaryInformationText());
- assertNotNull(ext.getText());
- }
+ try (InputStream is = _samples.openResourceAsStream("TestVisioWithCodepage.vsd");
+ POIFSFileSystem fs = new POIFSFileSystem(is);
+ HPSFPropertiesExtractor ext = new HPSFPropertiesExtractor(fs)) {
+ assertNotNull(ext.getDocSummaryInformation());
+ assertNotNull(ext.getDocumentSummaryInformationText());
+ assertNotNull(ext.getSummaryInformation());
+ assertNotNull(ext.getSummaryInformationText());
+ assertNotNull(ext.getText());
+ }
}
- @Test
- public void test61300Extractor() throws IOException {
- try (POIFSFileSystem poifs = new POIFSFileSystem(
- POIDataSamples.getPOIFSInstance().getFile("61300.bin"))) {
- HPSFPropertiesExtractor ext = new HPSFPropertiesExtractor(poifs);
- assertContains(ext.getText(), "PID_CODEPAGE = 1252");
- }
- }
+ @Test
+ public void test61300Extractor() throws IOException {
+ try (POIFSFileSystem poifs = new POIFSFileSystem(
+ POIDataSamples.getPOIFSInstance().getFile("61300.bin"))) {
+ HPSFPropertiesExtractor ext = new HPSFPropertiesExtractor(poifs);
+ assertContains(ext.getText(), "PID_CODEPAGE = 1252");
+ }
+ }
}