You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ki...@apache.org on 2021/05/14 00:37:53 UTC
svn commit: r1889871 [10/17] - in /poi: site/src/documentation/content/xdocs/
site/src/documentation/content/xdocs/components/ trunk/ trunk/maven/
trunk/osgi/ trunk/osgi/src/test/java/org/apache/poi/osgi/
trunk/poi-examples/src/main/java/org/apache/poi...
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestSlideMaster.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestSlideMaster.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestSlideMaster.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestSlideMaster.java Fri May 14 00:37:50 2021
@@ -17,28 +17,32 @@
package org.apache.poi.hslf.model;
+import static org.apache.poi.hslf.HSLFTestDataSamples.getSlideShow;
+import static org.apache.poi.hslf.HSLFTestDataSamples.writeOutAndReadBack;
import static org.apache.poi.sl.usermodel.TextShape.TextPlaceholder.BODY;
import static org.apache.poi.sl.usermodel.TextShape.TextPlaceholder.CENTER_BODY;
import static org.apache.poi.sl.usermodel.TextShape.TextPlaceholder.CENTER_TITLE;
import static org.apache.poi.sl.usermodel.TextShape.TextPlaceholder.TITLE;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.List;
+import java.util.Objects;
+import java.util.stream.IntStream;
import org.apache.poi.POIDataSamples;
import org.apache.poi.hslf.model.textproperties.CharFlagsTextProp;
import org.apache.poi.hslf.model.textproperties.TextProp;
import org.apache.poi.hslf.record.Environment;
+import org.apache.poi.hslf.usermodel.HSLFFontInfo;
import org.apache.poi.hslf.usermodel.HSLFMasterSheet;
import org.apache.poi.hslf.usermodel.HSLFSlide;
import org.apache.poi.hslf.usermodel.HSLFSlideMaster;
import org.apache.poi.hslf.usermodel.HSLFSlideShow;
-import org.apache.poi.hslf.usermodel.HSLFSlideShowImpl;
import org.apache.poi.hslf.usermodel.HSLFTextParagraph;
import org.apache.poi.hslf.usermodel.HSLFTextRun;
import org.apache.poi.hslf.usermodel.HSLFTitleMaster;
@@ -49,7 +53,7 @@ import org.junit.jupiter.api.Test;
* Tests for SlideMaster
*/
public final class TestSlideMaster {
- private static POIDataSamples _slTests = POIDataSamples.getSlideShowInstance();
+ private static final POIDataSamples _slTests = POIDataSamples.getSlideShowInstance();
/**
* The reference ppt has two masters.
@@ -57,46 +61,54 @@ public final class TestSlideMaster {
*/
@Test
void testSlideMaster() throws IOException {
- final HSLFSlideShow ppt = new HSLFSlideShow(_slTests.openResourceAsStream("slide_master.ppt"));
+ try (HSLFSlideShow ppt = getSlideShow("slide_master.ppt")) {
- final Environment env = ppt.getDocumentRecord().getEnvironment();
+ final Environment env = ppt.getDocumentRecord().getEnvironment();
- assertEquals(2, ppt.getSlideMasters().size());
+ assertEquals(2, ppt.getSlideMasters().size());
- //character attributes
- assertEquals(40, getMasterVal(ppt, 0, TITLE, "font.size", true));
- assertEquals(48, getMasterVal(ppt, 1, TITLE, "font.size", true));
-
- int font1 = getMasterVal(ppt, 0, TITLE, "font.index", true);
- int font2 = getMasterVal(ppt, 1, TITLE, "font.index", true);
- assertEquals("Arial", env.getFontCollection().getFontInfo(font1).getTypeface());
- assertEquals("Georgia", env.getFontCollection().getFontInfo(font2).getTypeface());
-
- CharFlagsTextProp prop1 = getMasterProp(ppt, 0, TITLE, "char_flags", true);
- assertFalse(prop1.getSubValue(CharFlagsTextProp.BOLD_IDX));
- assertFalse(prop1.getSubValue(CharFlagsTextProp.ITALIC_IDX));
- assertTrue(prop1.getSubValue(CharFlagsTextProp.UNDERLINE_IDX));
-
- CharFlagsTextProp prop2 = getMasterProp(ppt, 1, TITLE, "char_flags", true);
- assertFalse(prop2.getSubValue(CharFlagsTextProp.BOLD_IDX));
- assertTrue(prop2.getSubValue(CharFlagsTextProp.ITALIC_IDX));
- assertFalse(prop2.getSubValue(CharFlagsTextProp.UNDERLINE_IDX));
-
- //now paragraph attributes
- assertEquals(0x266B, getMasterVal(ppt, 0, BODY, "bullet.char", false));
- assertEquals(0x2022, getMasterVal(ppt, 1, BODY, "bullet.char", false));
-
- int b1 = getMasterVal(ppt, 0, BODY, "bullet.font", false);
- int b2 = getMasterVal(ppt, 1, BODY, "bullet.font", false);
- assertEquals("Arial", env.getFontCollection().getFontInfo(b1).getTypeface());
- assertEquals("Georgia", env.getFontCollection().getFontInfo(b2).getTypeface());
-
- ppt.close();
+ //character attributes
+ assertEquals(40, getMasterVal(ppt, 0, TITLE, "font.size", true));
+ assertEquals(48, getMasterVal(ppt, 1, TITLE, "font.size", true));
+
+ int font1 = getMasterVal(ppt, 0, TITLE, "font.index", true);
+ int font2 = getMasterVal(ppt, 1, TITLE, "font.index", true);
+ HSLFFontInfo fontInfo = env.getFontCollection().getFontInfo(font1);
+ assertNotNull(fontInfo);
+ assertEquals("Arial", fontInfo.getTypeface());
+ fontInfo = env.getFontCollection().getFontInfo(font2);
+ assertNotNull(fontInfo);
+ assertEquals("Georgia", fontInfo.getTypeface());
+
+ CharFlagsTextProp prop1 = getMasterProp(ppt, 0, TITLE, "char_flags", true);
+ assertFalse(prop1.getSubValue(CharFlagsTextProp.BOLD_IDX));
+ assertFalse(prop1.getSubValue(CharFlagsTextProp.ITALIC_IDX));
+ assertTrue(prop1.getSubValue(CharFlagsTextProp.UNDERLINE_IDX));
+
+ CharFlagsTextProp prop2 = getMasterProp(ppt, 1, TITLE, "char_flags", true);
+ assertFalse(prop2.getSubValue(CharFlagsTextProp.BOLD_IDX));
+ assertTrue(prop2.getSubValue(CharFlagsTextProp.ITALIC_IDX));
+ assertFalse(prop2.getSubValue(CharFlagsTextProp.UNDERLINE_IDX));
+
+ //now paragraph attributes
+ assertEquals(0x266B, getMasterVal(ppt, 0, BODY, "bullet.char", false));
+ assertEquals(0x2022, getMasterVal(ppt, 1, BODY, "bullet.char", false));
+
+ int b1 = getMasterVal(ppt, 0, BODY, "bullet.font", false);
+ int b2 = getMasterVal(ppt, 1, BODY, "bullet.font", false);
+ fontInfo = env.getFontCollection().getFontInfo(b1);
+ assertNotNull(fontInfo);
+ assertEquals("Arial", fontInfo.getTypeface());
+ fontInfo = env.getFontCollection().getFontInfo(b2);
+ assertNotNull(fontInfo);
+ assertEquals("Georgia", fontInfo.getTypeface());
+ }
}
- @SuppressWarnings("unchecked")
private static <T extends TextProp> T getMasterProp(HSLFSlideShow ppt, int masterIdx, TextPlaceholder txtype, String propName, boolean isCharacter) {
- return (T)ppt.getSlideMasters().get(masterIdx).getPropCollection(txtype.nativeId, 0, propName, isCharacter).findByName(propName);
+ return Objects.requireNonNull(ppt.getSlideMasters().get(masterIdx)
+ .getPropCollection(txtype.nativeId, 0, propName, isCharacter))
+ .findByName(propName);
}
private static int getMasterVal(HSLFSlideShow ppt, int masterIdx, TextPlaceholder txtype, String propName, boolean isCharacter) {
@@ -109,22 +121,21 @@ public final class TestSlideMaster {
*/
@Test
void testTitleMasterTextAttributes() throws IOException {
- HSLFSlideShow ppt = new HSLFSlideShow(_slTests.openResourceAsStream("slide_master.ppt"));
- assertEquals(1, ppt.getTitleMasters().size());
-
- assertEquals(40, getMasterVal(ppt, 0, CENTER_TITLE, "font.size", true));
- CharFlagsTextProp prop1 = getMasterProp(ppt, 0, CENTER_TITLE, "char_flags", true);
- assertFalse(prop1.getSubValue(CharFlagsTextProp.BOLD_IDX));
- assertFalse(prop1.getSubValue(CharFlagsTextProp.ITALIC_IDX));
- assertTrue(prop1.getSubValue(CharFlagsTextProp.UNDERLINE_IDX));
-
- assertEquals(32, getMasterVal(ppt, 0, CENTER_BODY, "font.size", true));
- CharFlagsTextProp prop2 = getMasterProp(ppt, 0, CENTER_BODY, "char_flags", true);
- assertFalse(prop2.getSubValue(CharFlagsTextProp.BOLD_IDX));
- assertFalse(prop2.getSubValue(CharFlagsTextProp.ITALIC_IDX));
- assertFalse(prop2.getSubValue(CharFlagsTextProp.UNDERLINE_IDX));
+ try (HSLFSlideShow ppt = getSlideShow("slide_master.ppt")) {
+ assertEquals(1, ppt.getTitleMasters().size());
- ppt.close();
+ assertEquals(40, getMasterVal(ppt, 0, CENTER_TITLE, "font.size", true));
+ CharFlagsTextProp prop1 = getMasterProp(ppt, 0, CENTER_TITLE, "char_flags", true);
+ assertFalse(prop1.getSubValue(CharFlagsTextProp.BOLD_IDX));
+ assertFalse(prop1.getSubValue(CharFlagsTextProp.ITALIC_IDX));
+ assertTrue(prop1.getSubValue(CharFlagsTextProp.UNDERLINE_IDX));
+
+ assertEquals(32, getMasterVal(ppt, 0, CENTER_BODY, "font.size", true));
+ CharFlagsTextProp prop2 = getMasterProp(ppt, 0, CENTER_BODY, "char_flags", true);
+ assertFalse(prop2.getSubValue(CharFlagsTextProp.BOLD_IDX));
+ assertFalse(prop2.getSubValue(CharFlagsTextProp.ITALIC_IDX));
+ assertFalse(prop2.getSubValue(CharFlagsTextProp.UNDERLINE_IDX));
+ }
}
/**
@@ -132,30 +143,32 @@ public final class TestSlideMaster {
*/
@Test
void testTitleMaster() throws IOException {
- HSLFSlideShow ppt = new HSLFSlideShow(_slTests.openResourceAsStream("slide_master.ppt"));
- HSLFSlide slide = ppt.getSlides().get(2);
- HSLFMasterSheet masterSheet = slide.getMasterSheet();
- assertTrue(masterSheet instanceof HSLFTitleMaster);
-
- for (List<HSLFTextParagraph> txt : slide.getTextParagraphs()) {
- HSLFTextRun rt = txt.get(0).getTextRuns().get(0);
- switch(TextPlaceholder.fromNativeId(txt.get(0).getRunType())){
- case CENTER_TITLE:
- assertEquals("Arial", rt.getFontFamily());
- assertEquals(32, rt.getFontSize(), 0);
- assertTrue(rt.isBold());
- assertTrue(rt.isUnderlined());
- break;
- case CENTER_BODY:
- assertEquals("Courier New", rt.getFontFamily());
- assertEquals(20, rt.getFontSize(), 0);
- assertTrue(rt.isBold());
- assertFalse(rt.isUnderlined());
- break;
+ try (HSLFSlideShow ppt = getSlideShow("slide_master.ppt")) {
+ HSLFSlide slide = ppt.getSlides().get(2);
+ HSLFMasterSheet masterSheet = slide.getMasterSheet();
+ assertTrue(masterSheet instanceof HSLFTitleMaster);
+
+ for (List<HSLFTextParagraph> txt : slide.getTextParagraphs()) {
+ HSLFTextRun rt = txt.get(0).getTextRuns().get(0);
+ assertNotNull(rt.getFontSize());
+ TextPlaceholder tp = TextPlaceholder.fromNativeId(txt.get(0).getRunType());
+ assertNotNull(tp);
+ switch (tp) {
+ case CENTER_TITLE:
+ assertEquals("Arial", rt.getFontFamily());
+ assertEquals(32, rt.getFontSize(), 0);
+ assertTrue(rt.isBold());
+ assertTrue(rt.isUnderlined());
+ break;
+ case CENTER_BODY:
+ assertEquals("Courier New", rt.getFontFamily());
+ assertEquals(20, rt.getFontSize(), 0);
+ assertTrue(rt.isBold());
+ assertFalse(rt.isUnderlined());
+ break;
+ }
}
-
}
- ppt.close();
}
/**
@@ -163,48 +176,46 @@ public final class TestSlideMaster {
*/
@Test
void testMasterAttributes() throws Exception {
- HSLFSlideShow ppt = new HSLFSlideShow(_slTests.openResourceAsStream("slide_master.ppt"));
- List<HSLFSlide> slide = ppt.getSlides();
- assertEquals(3, slide.size());
- for (List<HSLFTextParagraph> tparas : slide.get(0).getTextParagraphs()) {
- HSLFTextParagraph tpara = tparas.get(0);
- if (tpara.getRunType() == TITLE.nativeId){
- HSLFTextRun rt = tpara.getTextRuns().get(0);
- assertEquals(40, rt.getFontSize(), 0);
- assertTrue(rt.isUnderlined());
- assertEquals("Arial", rt.getFontFamily());
- } else if (tpara.getRunType() == BODY.nativeId){
+ try (HSLFSlideShow ppt = getSlideShow("slide_master.ppt")) {
+ List<HSLFSlide> slide = ppt.getSlides();
+ assertEquals(3, slide.size());
+ for (List<HSLFTextParagraph> tparas : slide.get(0).getTextParagraphs()) {
+ HSLFTextParagraph tpara = tparas.get(0);
HSLFTextRun rt = tpara.getTextRuns().get(0);
- assertEquals(0, tpara.getIndentLevel());
- assertEquals(32, rt.getFontSize(), 0);
- assertEquals("Arial", rt.getFontFamily());
-
- tpara = tparas.get(1);
- rt = tpara.getTextRuns().get(0);
- assertEquals(1, tpara.getIndentLevel());
- assertEquals(28, rt.getFontSize(), 0);
- assertEquals("Arial", rt.getFontFamily());
+ assertNotNull(rt.getFontSize());
+ if (tpara.getRunType() == TITLE.nativeId) {
+ assertEquals(40, rt.getFontSize(), 0);
+ assertTrue(rt.isUnderlined());
+ assertEquals("Arial", rt.getFontFamily());
+ } else if (tpara.getRunType() == BODY.nativeId) {
+ assertEquals(0, tpara.getIndentLevel());
+ assertEquals(32, rt.getFontSize(), 0);
+ assertEquals("Arial", rt.getFontFamily());
+ tpara = tparas.get(1);
+ rt = tpara.getTextRuns().get(0);
+ assertEquals(1, tpara.getIndentLevel());
+ assertNotNull(rt.getFontSize());
+ assertEquals(28, rt.getFontSize(), 0);
+ assertEquals("Arial", rt.getFontFamily());
+ }
}
- }
- for (List<HSLFTextParagraph> tparas : slide.get(1).getTextParagraphs()) {
- HSLFTextParagraph tpara = tparas.get(0);
- if (tpara.getRunType() == TITLE.nativeId){
+ for (List<HSLFTextParagraph> tparas : slide.get(1).getTextParagraphs()) {
+ HSLFTextParagraph tpara = tparas.get(0);
HSLFTextRun rt = tpara.getTextRuns().get(0);
- assertEquals(48, rt.getFontSize(), 0);
- assertTrue(rt.isItalic());
- assertEquals("Georgia", rt.getFontFamily());
- } else if (tpara.getRunType() == BODY.nativeId){
- HSLFTextRun rt;
- rt = tpara.getTextRuns().get(0);
- assertEquals(0, tpara.getIndentLevel());
- assertEquals(32, rt.getFontSize(), 0);
- assertEquals("Courier New", rt.getFontFamily());
+ assertNotNull(rt.getFontSize());
+ if (tpara.getRunType() == TITLE.nativeId) {
+ assertEquals(48, rt.getFontSize(), 0);
+ assertTrue(rt.isItalic());
+ assertEquals("Georgia", rt.getFontFamily());
+ } else if (tpara.getRunType() == BODY.nativeId) {
+ assertEquals(0, tpara.getIndentLevel());
+ assertEquals(32, rt.getFontSize(), 0);
+ assertEquals("Courier New", rt.getFontFamily());
+ }
}
}
-
- ppt.close();
}
/**
@@ -212,35 +223,32 @@ public final class TestSlideMaster {
*/
@Test
void testChangeSlideMaster() throws IOException {
- HSLFSlideShow ppt = new HSLFSlideShow(_slTests.openResourceAsStream("slide_master.ppt"));
- List<HSLFSlideMaster> master = ppt.getSlideMasters();
- List<HSLFSlide> slide = ppt.getSlides();
- int sheetNo;
-
- //each slide uses its own master
- assertEquals(slide.get(0).getMasterSheet()._getSheetNumber(), master.get(0)._getSheetNumber());
- assertEquals(slide.get(1).getMasterSheet()._getSheetNumber(), master.get(1)._getSheetNumber());
-
- //all slides use the first master slide
- sheetNo = master.get(0)._getSheetNumber();
- for (HSLFSlide s : slide) {
- s.setMasterSheet(master.get(0));
- }
-
- ByteArrayOutputStream out;
-
- out = new ByteArrayOutputStream();
- ppt.write(out);
- out.close();
-
- ppt = new HSLFSlideShow(new HSLFSlideShowImpl(new ByteArrayInputStream(out.toByteArray())));
- master = ppt.getSlideMasters();
- slide = ppt.getSlides();
- for (HSLFSlide s : slide) {
- assertEquals(sheetNo, s.getMasterSheet()._getSheetNumber());
+ try (HSLFSlideShow ppt = new HSLFSlideShow(_slTests.openResourceAsStream("slide_master.ppt"))) {
+ int[] masterIds = IntStream.concat(
+ ppt.getSlideMasters().stream().mapToInt(HSLFSlideMaster::_getSheetNumber),
+ ppt.getTitleMasters().stream().mapToInt(HSLFTitleMaster::_getSheetNumber)
+ ).toArray();
+ //each slide uses its own master
+ int[] slideMasters = ppt.getSlides().stream().mapToInt(s -> {
+ HSLFMasterSheet m = s.getMasterSheet();
+ assertNotNull(m);
+ return m._getSheetNumber();
+ }).toArray();
+ assertArrayEquals(masterIds, slideMasters);
+
+ //all slides use the first master slide
+ HSLFSlideMaster master0 = ppt.getSlideMasters().get(0);
+ int sheetNo = master0._getSheetNumber();
+ ppt.getSlides().forEach(s -> s.setMasterSheet(master0));
+
+ try (HSLFSlideShow ppt2 = writeOutAndReadBack(ppt)) {
+ for (HSLFSlide s : ppt2.getSlides()) {
+ HSLFMasterSheet ms = s.getMasterSheet();
+ assertNotNull(ms);
+ assertEquals(sheetNo, ms._getSheetNumber());
+ }
+ }
}
-
- ppt.close();
}
/**
@@ -256,6 +264,7 @@ public final class TestSlideMaster {
HSLFTextParagraph tpara = tparas.get(0);
if (tpara.getRunType() == TITLE.nativeId){
HSLFTextRun rt = tpara.getTextRuns().get(0);
+ assertNotNull(rt.getFontSize());
assertEquals(40, rt.getFontSize(), 0);
assertTrue(rt.isUnderlined());
assertEquals("Arial", rt.getFontFamily());
@@ -263,6 +272,7 @@ public final class TestSlideMaster {
int[] indents = {32, 28, 24};
for (HSLFTextRun rt : tpara.getTextRuns()) {
int indent = tpara.getIndentLevel();
+ assertNotNull(rt.getFontSize());
assertEquals(indents[indent], rt.getFontSize(), 0);
}
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestSlides.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestSlides.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestSlides.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestSlides.java Fri May 14 00:37:50 2021
@@ -17,14 +17,13 @@
package org.apache.poi.hslf.model;
+import static org.apache.poi.hslf.HSLFTestDataSamples.getSlideShow;
+import static org.apache.poi.hslf.HSLFTestDataSamples.writeOutAndReadBack;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-
-import org.apache.poi.POIDataSamples;
-import org.apache.poi.hslf.usermodel.*;
+import org.apache.poi.hslf.usermodel.HSLFSlide;
+import org.apache.poi.hslf.usermodel.HSLFSlideShow;
import org.junit.jupiter.api.Test;
/**
@@ -36,105 +35,96 @@ public final class TestSlides {
/**
* Add 1 slide to an empty ppt.
- * @throws Exception
*/
@Test
void testAddSlides1() throws Exception {
- HSLFSlideShow ppt = new HSLFSlideShow(new HSLFSlideShowImpl( TestSlides.class.getResourceAsStream("/org/apache/poi/hslf/data/empty.ppt") ));
- assertTrue(ppt.getSlides().isEmpty());
-
- HSLFSlide s1 = ppt.createSlide();
- assertEquals(1, ppt.getSlides().size());
- assertEquals(3, s1._getSheetRefId());
- assertEquals(256, s1._getSheetNumber());
- assertEquals(1, s1.getSlideNumber());
-
- //serialize and read again
- ByteArrayOutputStream out = new ByteArrayOutputStream();
- ppt.write(out);
- out.close();
+ try (HSLFSlideShow ppt1 = new HSLFSlideShow()) {
+ assertTrue(ppt1.getSlides().isEmpty());
- ppt = new HSLFSlideShow(new HSLFSlideShowImpl(new ByteArrayInputStream(out.toByteArray())));
- assertEquals(1, ppt.getSlides().size());
+ HSLFSlide s1 = ppt1.createSlide();
+ assertEquals(1, ppt1.getSlides().size());
+ assertEquals(3, s1._getSheetRefId());
+ assertEquals(256, s1._getSheetNumber());
+ assertEquals(1, s1.getSlideNumber());
+
+ //serialize and read again
+ try (HSLFSlideShow ppt2 = writeOutAndReadBack(ppt1)){
+ assertEquals(1, ppt2.getSlides().size());
+ }
+ }
}
/**
* Add 2 slides to an empty ppt
- * @throws Exception
*/
@Test
void testAddSlides2() throws Exception {
- HSLFSlideShow ppt = new HSLFSlideShow(new HSLFSlideShowImpl( TestSlides.class.getResourceAsStream("/org/apache/poi/hslf/data/empty.ppt") ));
- assertTrue(ppt.getSlides().isEmpty());
+ try (HSLFSlideShow ppt1 = new HSLFSlideShow()) {
+ assertTrue(ppt1.getSlides().isEmpty());
- HSLFSlide s1 = ppt.createSlide();
- assertEquals(1, ppt.getSlides().size());
- assertEquals(3, s1._getSheetRefId());
- assertEquals(256, s1._getSheetNumber());
- assertEquals(1, s1.getSlideNumber());
-
- HSLFSlide s2 = ppt.createSlide();
- assertEquals(2, ppt.getSlides().size());
- assertEquals(4, s2._getSheetRefId());
- assertEquals(257, s2._getSheetNumber());
- assertEquals(2, s2.getSlideNumber());
-
- //serialize and read again
- ByteArrayOutputStream out = new ByteArrayOutputStream();
- ppt.write(out);
- out.close();
-
- ppt = new HSLFSlideShow(new HSLFSlideShowImpl(new ByteArrayInputStream(out.toByteArray())));
- assertEquals(2, ppt.getSlides().size());
+ HSLFSlide s1 = ppt1.createSlide();
+ assertEquals(1, ppt1.getSlides().size());
+ assertEquals(3, s1._getSheetRefId());
+ assertEquals(256, s1._getSheetNumber());
+ assertEquals(1, s1.getSlideNumber());
+
+ HSLFSlide s2 = ppt1.createSlide();
+ assertEquals(2, ppt1.getSlides().size());
+ assertEquals(4, s2._getSheetRefId());
+ assertEquals(257, s2._getSheetNumber());
+ assertEquals(2, s2.getSlideNumber());
+
+ //serialize and read again
+ try (HSLFSlideShow ppt2 = writeOutAndReadBack(ppt1)) {
+ assertEquals(2, ppt2.getSlides().size());
+ }
+ }
}
/**
* Add 3 slides to an empty ppt
- * @throws Exception
*/
@Test
void testAddSlides3() throws Exception {
- HSLFSlideShow ppt = new HSLFSlideShow(new HSLFSlideShowImpl( TestSlides.class.getResourceAsStream("/org/apache/poi/hslf/data/empty.ppt") ));
- assertTrue(ppt.getSlides().isEmpty());
+ try (HSLFSlideShow ppt1 = new HSLFSlideShow()) {
+ assertTrue(ppt1.getSlides().isEmpty());
- HSLFSlide s1 = ppt.createSlide();
- assertEquals(1, ppt.getSlides().size());
- assertEquals(3, s1._getSheetRefId());
- assertEquals(256, s1._getSheetNumber());
- assertEquals(1, s1.getSlideNumber());
-
- HSLFSlide s2 = ppt.createSlide();
- assertEquals(2, ppt.getSlides().size());
- assertEquals(4, s2._getSheetRefId());
- assertEquals(257, s2._getSheetNumber());
- assertEquals(2, s2.getSlideNumber());
-
- HSLFSlide s3 = ppt.createSlide();
- assertEquals(3, ppt.getSlides().size());
- assertEquals(5, s3._getSheetRefId());
- assertEquals(258, s3._getSheetNumber());
- assertEquals(3, s3.getSlideNumber());
-
-
- //serialize and read again
- ByteArrayOutputStream out = new ByteArrayOutputStream();
- ppt.write(out);
- out.close();
-
- ppt = new HSLFSlideShow(new HSLFSlideShowImpl(new ByteArrayInputStream(out.toByteArray())));
- assertEquals(3, ppt.getSlides().size());
-
- // Check IDs are still right
- s1 = ppt.getSlides().get(0);
- assertEquals(256, s1._getSheetNumber());
- assertEquals(3, s1._getSheetRefId());
- s2 = ppt.getSlides().get(1);
- assertEquals(257, s2._getSheetNumber());
- assertEquals(4, s2._getSheetRefId());
- s3 = ppt.getSlides().get(2);
- assertEquals(3, ppt.getSlides().size());
- assertEquals(258, s3._getSheetNumber());
- assertEquals(5, s3._getSheetRefId());
+ HSLFSlide s1 = ppt1.createSlide();
+ assertEquals(1, ppt1.getSlides().size());
+ assertEquals(3, s1._getSheetRefId());
+ assertEquals(256, s1._getSheetNumber());
+ assertEquals(1, s1.getSlideNumber());
+
+ HSLFSlide s2 = ppt1.createSlide();
+ assertEquals(2, ppt1.getSlides().size());
+ assertEquals(4, s2._getSheetRefId());
+ assertEquals(257, s2._getSheetNumber());
+ assertEquals(2, s2.getSlideNumber());
+
+ HSLFSlide s3 = ppt1.createSlide();
+ assertEquals(3, ppt1.getSlides().size());
+ assertEquals(5, s3._getSheetRefId());
+ assertEquals(258, s3._getSheetNumber());
+ assertEquals(3, s3.getSlideNumber());
+
+
+ //serialize and read again
+ try (HSLFSlideShow ppt2 = writeOutAndReadBack(ppt1)) {
+ assertEquals(3, ppt2.getSlides().size());
+
+ // Check IDs are still right
+ s1 = ppt2.getSlides().get(0);
+ assertEquals(256, s1._getSheetNumber());
+ assertEquals(3, s1._getSheetRefId());
+ s2 = ppt2.getSlides().get(1);
+ assertEquals(257, s2._getSheetNumber());
+ assertEquals(4, s2._getSheetRefId());
+ s3 = ppt2.getSlides().get(2);
+ assertEquals(3, ppt2.getSlides().size());
+ assertEquals(258, s3._getSheetNumber());
+ assertEquals(5, s3._getSheetRefId());
+ }
+ }
}
/**
@@ -142,48 +132,42 @@ public final class TestSlides {
*/
@Test
void testAddSlides2to3() throws Exception {
- POIDataSamples slTests = POIDataSamples.getSlideShowInstance();
- HSLFSlideShow ppt = new HSLFSlideShow(slTests.openResourceAsStream("basic_test_ppt_file.ppt"));
+ try (HSLFSlideShow ppt1 = getSlideShow("basic_test_ppt_file.ppt")) {
- assertEquals(2, ppt.getSlides().size());
+ assertEquals(2, ppt1.getSlides().size());
- // First slide is 256 / 4
- HSLFSlide s1 = ppt.getSlides().get(0);
- assertEquals(256, s1._getSheetNumber());
- assertEquals(4, s1._getSheetRefId());
-
- // Last slide is 257 / 6
- HSLFSlide s2 = ppt.getSlides().get(1);
- assertEquals(257, s2._getSheetNumber());
- assertEquals(6, s2._getSheetRefId());
-
- // Add another slide, goes in at the end
- HSLFSlide s3 = ppt.createSlide();
- assertEquals(3, ppt.getSlides().size());
- assertEquals(258, s3._getSheetNumber());
- assertEquals(8, s3._getSheetRefId());
-
-
- // Serialize and read again
- ByteArrayOutputStream out = new ByteArrayOutputStream();
- ppt.write(out);
- out.close();
-
- ppt = new HSLFSlideShow(new HSLFSlideShowImpl(new ByteArrayInputStream(out.toByteArray())));
- assertEquals(3, ppt.getSlides().size());
-
-
- // Check IDs are still right
- s1 = ppt.getSlides().get(0);
- assertEquals(256, s1._getSheetNumber());
- assertEquals(4, s1._getSheetRefId());
- s2 = ppt.getSlides().get(1);
- assertEquals(257, s2._getSheetNumber());
- assertEquals(6, s2._getSheetRefId());
- s3 = ppt.getSlides().get(2);
- assertEquals(3, ppt.getSlides().size());
- assertEquals(258, s3._getSheetNumber());
- assertEquals(8, s3._getSheetRefId());
+ // First slide is 256 / 4
+ HSLFSlide s1 = ppt1.getSlides().get(0);
+ assertEquals(256, s1._getSheetNumber());
+ assertEquals(4, s1._getSheetRefId());
+
+ // Last slide is 257 / 6
+ HSLFSlide s2 = ppt1.getSlides().get(1);
+ assertEquals(257, s2._getSheetNumber());
+ assertEquals(6, s2._getSheetRefId());
+
+ // Add another slide, goes in at the end
+ HSLFSlide s3 = ppt1.createSlide();
+ assertEquals(3, ppt1.getSlides().size());
+ assertEquals(258, s3._getSheetNumber());
+ assertEquals(8, s3._getSheetRefId());
+
+ // Serialize and read again
+ try (HSLFSlideShow ppt2 = writeOutAndReadBack(ppt1)) {
+ assertEquals(3, ppt2.getSlides().size());
+
+ // Check IDs are still right
+ s1 = ppt2.getSlides().get(0);
+ assertEquals(256, s1._getSheetNumber());
+ assertEquals(4, s1._getSheetRefId());
+ s2 = ppt2.getSlides().get(1);
+ assertEquals(257, s2._getSheetNumber());
+ assertEquals(6, s2._getSheetRefId());
+ s3 = ppt2.getSlides().get(2);
+ assertEquals(3, ppt2.getSlides().size());
+ assertEquals(258, s3._getSheetNumber());
+ assertEquals(8, s3._getSheetRefId());
+ }
+ }
}
-
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestTable.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestTable.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestTable.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestTable.java Fri May 14 00:37:50 2021
@@ -17,18 +17,17 @@
package org.apache.poi.hslf.model;
+import static org.apache.poi.hslf.HSLFTestDataSamples.getSlideShow;
+import static org.apache.poi.hslf.HSLFTestDataSamples.writeOutAndReadBack;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertSame;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.List;
-import org.apache.poi.POIDataSamples;
import org.apache.poi.hslf.usermodel.HSLFShape;
import org.apache.poi.hslf.usermodel.HSLFSlide;
import org.apache.poi.hslf.usermodel.HSLFSlideShow;
@@ -42,18 +41,15 @@ import org.apache.poi.sl.usermodel.TextS
import org.junit.jupiter.api.Test;
/**
- * Test <code>Table</code> object.
+ * Test {@code Table} object.
*/
public final class TestTable {
- private static final POIDataSamples _slTests = POIDataSamples.getSlideShowInstance();
-
/**
- * Test that ShapeFactory works properly and returns <code>Table</code>
+ * Test that ShapeFactory works properly and returns {@code Table}
*/
@Test
void testShapeFactory() throws IOException {
final int noColumns, noRows;
- ByteArrayOutputStream out = new ByteArrayOutputStream();
try (HSLFSlideShow ppt = new HSLFSlideShow()) {
HSLFSlide slide = ppt.createSlide();
@@ -73,16 +69,15 @@ public final class TestTable {
assertEquals(noColumns, tbl2.getNumberOfColumns());
assertEquals(noRows, tbl2.getNumberOfRows());
- ppt.write(out);
+ try (HSLFSlideShow ppt2 = writeOutAndReadBack(ppt)) {
+ HSLFSlide slide2 = ppt2.getSlides().get(0);
+ assertTrue(slide2.getShapes().get(0) instanceof HSLFTable);
+ HSLFTable tbl3 = (HSLFTable) slide2.getShapes().get(0);
+ assertEquals(noColumns, tbl3.getNumberOfColumns());
+ assertEquals(noRows, tbl3.getNumberOfRows());
+ }
}
- try (HSLFSlideShow ppt = new HSLFSlideShow(new ByteArrayInputStream(out.toByteArray()))) {
- HSLFSlide slide = ppt.getSlides().get(0);
- assertTrue(slide.getShapes().get(0) instanceof HSLFTable);
- HSLFTable tbl3 = (HSLFTable) slide.getShapes().get(0);
- assertEquals(noColumns, tbl3.getNumberOfColumns());
- assertEquals(noRows, tbl3.getNumberOfRows());
- }
}
/**
@@ -132,7 +127,7 @@ public final class TestTable {
*/
@Test
void test57820() throws IOException {
- try (SlideShow<?,?> ppt = new HSLFSlideShow(_slTests.openResourceAsStream("bug57820-initTableNullRefrenceException.ppt"))) {
+ try (SlideShow<?,?> ppt = getSlideShow("bug57820-initTableNullRefrenceException.ppt")) {
List<? extends Slide<?, ?>> slides = ppt.getSlides();
assertEquals(1, slides.size());
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestTextRunReWrite.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestTextRunReWrite.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestTextRunReWrite.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/model/TestTextRunReWrite.java Fri May 14 00:37:50 2021
@@ -17,22 +17,20 @@
package org.apache.poi.hslf.model;
+import static org.apache.poi.POIDataSamples.writeOutAndReadBack;
+import static org.apache.poi.hslf.HSLFTestDataSamples.getSlideShow;
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.List;
-import org.apache.poi.POIDataSamples;
import org.apache.poi.hslf.usermodel.HSLFSlideShow;
import org.apache.poi.hslf.usermodel.HSLFTextParagraph;
import org.apache.poi.hslf.usermodel.HSLFTextRun;
import org.apache.poi.poifs.filesystem.DirectoryNode;
import org.apache.poi.poifs.filesystem.DocumentEntry;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
-import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
/**
@@ -41,137 +39,111 @@ import org.junit.jupiter.api.Test;
* that we don't break anything in the process.
*/
public final class TestTextRunReWrite {
- // HSLFSlideShow primed on the test data
- private HSLFSlideShow ss;
-
- /**
- * Load up a test PPT file with rich data
- */
- @BeforeEach
- void setUp() throws Exception {
- POIDataSamples slTests = POIDataSamples.getSlideShowInstance();
- String filename = "Single_Coloured_Page_With_Fonts_and_Alignments.ppt";
- ss = new HSLFSlideShow(slTests.openResourceAsStream(filename));
- }
-
@Test
void testWritesOutTheSameNonRich() throws IOException {
- // Ensure the text lengths are as we'd expect to start with
- assertEquals(1, ss.getSlides().size());
- assertEquals(2, ss.getSlides().get(0).getTextParagraphs().size());
-
- // Grab the first text run on the first sheet
- List<HSLFTextParagraph> tr1 = ss.getSlides().get(0).getTextParagraphs().get(0);
- List<HSLFTextParagraph> tr2 = ss.getSlides().get(0).getTextParagraphs().get(1);
-
-
- assertEquals(30, HSLFTextParagraph.getRawText(tr1).length());
- assertEquals(179, HSLFTextParagraph.getRawText(tr2).length());
-
- assertEquals(1, tr1.size());
- assertEquals(30, HSLFTextParagraph.getText(tr1).length());
- assertEquals(30, HSLFTextParagraph.getRawText(tr1).length());
- assertEquals(31, tr1.get(0).getTextRuns().get(0).getCharacterStyle().getCharactersCovered());
- assertEquals(31, tr1.get(0).getParagraphStyle().getCharactersCovered());
-
- // Set the text to be as it is now
- HSLFTextParagraph.setText(tr1, HSLFTextParagraph.getRawText(tr1));
- tr1 = ss.getSlides().get(0).getTextParagraphs().get(0);
-
- // Check the text lengths are still right
- assertEquals(30, HSLFTextParagraph.getRawText(tr1).length());
- assertEquals(179, HSLFTextParagraph.getRawText(tr2).length());
-
- assertEquals(1, tr1.size());
- assertEquals(30, HSLFTextParagraph.getText(tr1).length());
- assertEquals(30, HSLFTextParagraph.getRawText(tr1).length());
- assertEquals(31, tr1.get(0).getTextRuns().get(0).getCharacterStyle().getCharactersCovered());
- assertEquals(31, tr1.get(0).getParagraphStyle().getCharactersCovered());
-
-
- // Write the slideshow out to a byte array
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
- ss.write(baos);
-
- // Build an input stream of it
- ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
-
- // Use POIFS to query that lot
- POIFSFileSystem npfs = new POIFSFileSystem(bais);
-
- // Check that the "PowerPoint Document" sections have the same size
- DirectoryNode oDir = ss.getSlideShowImpl().getDirectory();
-
- DocumentEntry oProps = (DocumentEntry)oDir.getEntry(HSLFSlideShow.POWERPOINT_DOCUMENT);
- DocumentEntry nProps = (DocumentEntry)npfs.getRoot().getEntry(HSLFSlideShow.POWERPOINT_DOCUMENT);
- assertEquals(oProps.getSize(),nProps.getSize());
-
- // Check that they contain the same data
- byte[] _oData = new byte[oProps.getSize()];
- byte[] _nData = new byte[nProps.getSize()];
- oDir.createDocumentInputStream(HSLFSlideShow.POWERPOINT_DOCUMENT).read(_oData);
- npfs.createDocumentInputStream(HSLFSlideShow.POWERPOINT_DOCUMENT).read(_nData);
- assertArrayEquals(_oData, _nData);
-
- npfs.close();
+ try (HSLFSlideShow ppt1 = getSlideShow("Single_Coloured_Page_With_Fonts_and_Alignments.ppt")) {
+ // Ensure the text lengths are as we'd expect to start with
+ assertEquals(1, ppt1.getSlides().size());
+ assertEquals(2, ppt1.getSlides().get(0).getTextParagraphs().size());
+
+ // Grab the first text run on the first sheet
+ List<HSLFTextParagraph> tr1 = ppt1.getSlides().get(0).getTextParagraphs().get(0);
+ List<HSLFTextParagraph> tr2 = ppt1.getSlides().get(0).getTextParagraphs().get(1);
+
+
+ assertEquals(30, HSLFTextParagraph.getRawText(tr1).length());
+ assertEquals(179, HSLFTextParagraph.getRawText(tr2).length());
+
+ assertEquals(1, tr1.size());
+ assertEquals(30, HSLFTextParagraph.getText(tr1).length());
+ assertEquals(30, HSLFTextParagraph.getRawText(tr1).length());
+ assertEquals(31, tr1.get(0).getTextRuns().get(0).getCharacterStyle().getCharactersCovered());
+ assertEquals(31, tr1.get(0).getParagraphStyle().getCharactersCovered());
+
+ // Set the text to be as it is now
+ HSLFTextParagraph.setText(tr1, HSLFTextParagraph.getRawText(tr1));
+ tr1 = ppt1.getSlides().get(0).getTextParagraphs().get(0);
+
+ // Check the text lengths are still right
+ assertEquals(30, HSLFTextParagraph.getRawText(tr1).length());
+ assertEquals(179, HSLFTextParagraph.getRawText(tr2).length());
+
+ assertEquals(1, tr1.size());
+ assertEquals(30, HSLFTextParagraph.getText(tr1).length());
+ assertEquals(30, HSLFTextParagraph.getRawText(tr1).length());
+ assertEquals(31, tr1.get(0).getTextRuns().get(0).getCharacterStyle().getCharactersCovered());
+ assertEquals(31, tr1.get(0).getParagraphStyle().getCharactersCovered());
+
+ // Use POIFS to query that lot
+ try (POIFSFileSystem npfs = writeOutAndReadBack(ppt1.getDirectory().getFileSystem())) {
+ // Check that the "PowerPoint Document" sections have the same size
+ DirectoryNode oDir = ppt1.getSlideShowImpl().getDirectory();
+
+ DocumentEntry oProps = (DocumentEntry) oDir.getEntry(HSLFSlideShow.POWERPOINT_DOCUMENT);
+ DocumentEntry nProps = (DocumentEntry) npfs.getRoot().getEntry(HSLFSlideShow.POWERPOINT_DOCUMENT);
+ assertEquals(oProps.getSize(), nProps.getSize());
+
+ // Check that they contain the same data
+ byte[] _oData = new byte[oProps.getSize()];
+ byte[] _nData = new byte[nProps.getSize()];
+ int oLen = oDir.createDocumentInputStream(HSLFSlideShow.POWERPOINT_DOCUMENT).read(_oData);
+ int nLen = npfs.createDocumentInputStream(HSLFSlideShow.POWERPOINT_DOCUMENT).read(_nData);
+ assertEquals(_oData.length, oLen);
+ assertEquals(_nData.length, nLen);
+ assertArrayEquals(_oData, _nData);
+ }
+ }
}
@Test
void testWritesOutTheSameRich() throws IOException {
- // Grab the first text run on the first sheet
- List<HSLFTextParagraph> tr1 = ss.getSlides().get(0).getTextParagraphs().get(0);
-
- // Get the first rich text run
- HSLFTextRun rtr1 = tr1.get(0).getTextRuns().get(0);
-
-
- // Check that the text sizes are as expected
- assertEquals(1, tr1.get(0).getTextRuns().size());
- assertEquals(30, HSLFTextParagraph.getRawText(tr1).length());
- assertEquals(30, rtr1.getLength());
- assertEquals(30, rtr1.getRawText().length());
- assertEquals(31, rtr1.getCharacterStyle().getCharactersCovered());
- assertEquals(31, tr1.get(0).getParagraphStyle().getCharactersCovered());
-
- // Set the text to be as it is now
- rtr1.setText( rtr1.getRawText() );
- rtr1 = tr1.get(0).getTextRuns().get(0);
-
- // Check that the text sizes are still as expected
- assertEquals(1, tr1.get(0).getTextRuns().size());
- assertEquals(30, HSLFTextParagraph.getRawText(tr1).length());
- assertEquals(30, tr1.get(0).getTextRuns().get(0).getRawText().length());
- assertEquals(30, rtr1.getLength());
- assertEquals(30, rtr1.getRawText().length());
- assertEquals(31, rtr1.getCharacterStyle().getCharactersCovered());
- assertEquals(31, tr1.get(0).getParagraphStyle().getCharactersCovered());
-
-
- // Write the slideshow out to a byte array
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
- ss.write(baos);
-
- // Build an input stream of it
- ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
-
- // Use POIFS to query that lot
- POIFSFileSystem npfs = new POIFSFileSystem(bais);
-
- // Check that the "PowerPoint Document" sections have the same size
- DirectoryNode oDir = ss.getSlideShowImpl().getDirectory();
-
- DocumentEntry oProps = (DocumentEntry)oDir.getEntry(HSLFSlideShow.POWERPOINT_DOCUMENT);
- DocumentEntry nProps = (DocumentEntry)npfs.getRoot().getEntry(HSLFSlideShow.POWERPOINT_DOCUMENT);
- assertEquals(oProps.getSize(),nProps.getSize());
-
- // Check that they contain the same data
- byte[] _oData = new byte[oProps.getSize()];
- byte[] _nData = new byte[nProps.getSize()];
-
- oDir.createDocumentInputStream(HSLFSlideShow.POWERPOINT_DOCUMENT).read(_oData);
- npfs.createDocumentInputStream(HSLFSlideShow.POWERPOINT_DOCUMENT).read(_nData);
- assertArrayEquals(_oData, _nData);
-
- npfs.close();
+ try (HSLFSlideShow ppt1 = getSlideShow("Single_Coloured_Page_With_Fonts_and_Alignments.ppt")) {
+ // Grab the first text run on the first sheet
+ List<HSLFTextParagraph> tr1 = ppt1.getSlides().get(0).getTextParagraphs().get(0);
+
+ // Get the first rich text run
+ HSLFTextRun rtr1 = tr1.get(0).getTextRuns().get(0);
+
+ // Check that the text sizes are as expected
+ assertEquals(1, tr1.get(0).getTextRuns().size());
+ assertEquals(30, HSLFTextParagraph.getRawText(tr1).length());
+ assertEquals(30, rtr1.getLength());
+ assertEquals(30, rtr1.getRawText().length());
+ assertEquals(31, rtr1.getCharacterStyle().getCharactersCovered());
+ assertEquals(31, tr1.get(0).getParagraphStyle().getCharactersCovered());
+
+ // Set the text to be as it is now
+ rtr1.setText(rtr1.getRawText());
+ rtr1 = tr1.get(0).getTextRuns().get(0);
+
+ // Check that the text sizes are still as expected
+ assertEquals(1, tr1.get(0).getTextRuns().size());
+ assertEquals(30, HSLFTextParagraph.getRawText(tr1).length());
+ assertEquals(30, tr1.get(0).getTextRuns().get(0).getRawText().length());
+ assertEquals(30, rtr1.getLength());
+ assertEquals(30, rtr1.getRawText().length());
+ assertEquals(31, rtr1.getCharacterStyle().getCharactersCovered());
+ assertEquals(31, tr1.get(0).getParagraphStyle().getCharactersCovered());
+
+ // Use POIFS to query that lot
+ try (POIFSFileSystem npfs = writeOutAndReadBack(ppt1.getDirectory().getFileSystem())) {
+ // Check that the "PowerPoint Document" sections have the same size
+ DirectoryNode oDir = ppt1.getSlideShowImpl().getDirectory();
+
+ DocumentEntry oProps = (DocumentEntry) oDir.getEntry(HSLFSlideShow.POWERPOINT_DOCUMENT);
+ DocumentEntry nProps = (DocumentEntry) npfs.getRoot().getEntry(HSLFSlideShow.POWERPOINT_DOCUMENT);
+ assertEquals(oProps.getSize(), nProps.getSize());
+
+ // Check that they contain the same data
+ byte[] _oData = new byte[oProps.getSize()];
+ byte[] _nData = new byte[nProps.getSize()];
+
+ int oLen = oDir.createDocumentInputStream(HSLFSlideShow.POWERPOINT_DOCUMENT).read(_oData);
+ int nLen = npfs.createDocumentInputStream(HSLFSlideShow.POWERPOINT_DOCUMENT).read(_nData);
+ assertEquals(_oData.length, oLen);
+ assertEquals(_nData.length, nLen);
+ assertArrayEquals(_oData, _nData);
+ }
+ }
}
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestAnimationInfoAtom.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestAnimationInfoAtom.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestAnimationInfoAtom.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestAnimationInfoAtom.java Fri May 14 00:37:50 2021
@@ -23,8 +23,7 @@ import static org.junit.jupiter.api.Asse
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
-import java.io.ByteArrayOutputStream;
-
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.junit.jupiter.api.Test;
/**
@@ -66,7 +65,7 @@ public final class TestAnimationInfoAtom
@Test
void testWrite() throws Exception {
AnimationInfoAtom record = new AnimationInfoAtom(data, 0, data.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
byte[] b = baos.toByteArray();
@@ -82,7 +81,7 @@ public final class TestAnimationInfoAtom
record.setFlag(AnimationInfoAtom.Play, true);
record.setFlag(AnimationInfoAtom.Synchronous, true);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
byte[] b = baos.toByteArray();
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestCString.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestCString.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestCString.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestCString.java Fri May 14 00:37:50 2021
@@ -18,11 +18,11 @@
package org.apache.poi.hslf.record;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
-import java.io.ByteArrayOutputStream;
-
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.junit.jupiter.api.Test;
/**
@@ -70,24 +70,16 @@ public final class TestCString {
@Test
void testWrite() throws Exception {
CString ca = new CString(data_a, 0, data_a.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
ca.writeOut(baos);
byte[] b = baos.toByteArray();
-
- assertEquals(data_a.length, b.length);
- for(int i=0; i<data_a.length; i++) {
- assertEquals(data_a[i],b[i]);
- }
+ assertArrayEquals(data_a, b);
CString cb = new CString(data_b, 0, data_a.length);
- ByteArrayOutputStream baosB = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baosB = new UnsynchronizedByteArrayOutputStream();
cb.writeOut(baosB);
b = baosB.toByteArray();
-
- assertEquals(data_b.length, b.length);
- for(int i=0; i<data_b.length; i++) {
- assertEquals(data_b[i],b[i]);
- }
+ assertArrayEquals(data_b, b);
}
// Turn data_a into data_b
@@ -107,14 +99,9 @@ public final class TestCString {
}
assertFalse(equals, "Arrays should not be equals");
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
ca.writeOut(baos);
byte[] b = baos.toByteArray();
-
- // Should now be the same
- assertEquals(data_b.length, b.length);
- for(int i=0; i<data_b.length; i++) {
- assertEquals(data_b[i],b[i]);
- }
+ assertArrayEquals(data_b, b);
}
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestColorSchemeAtom.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestColorSchemeAtom.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestColorSchemeAtom.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestColorSchemeAtom.java Fri May 14 00:37:50 2021
@@ -18,10 +18,10 @@
package org.apache.poi.hslf.record;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
-import java.io.ByteArrayOutputStream;
-
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.junit.jupiter.api.Test;
/**
@@ -81,13 +81,10 @@ public final class TestColorSchemeAtom {
@Test
void testWrite() throws Exception {
ColorSchemeAtom csa = new ColorSchemeAtom(data_a,0,data_a.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
csa.writeOut(baos);
byte[] b = baos.toByteArray();
- assertEquals(data_a.length, b.length);
- for(int i=0; i<data_a.length; i++) {
- assertEquals(data_a[i],b[i]);
- }
+ assertArrayEquals(data_a, b);
}
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestComment2000.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestComment2000.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestComment2000.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestComment2000.java Fri May 14 00:37:50 2021
@@ -18,16 +18,17 @@
package org.apache.poi.hslf.record;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
-import java.io.ByteArrayOutputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.apache.poi.util.LocaleUtil;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
@@ -143,14 +144,10 @@ public final class TestComment2000 {
@Test
void testWrite() throws Exception {
Comment2000 ca = new Comment2000(data_a, 0, data_a.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
ca.writeOut(baos);
byte[] b = baos.toByteArray();
-
- assertEquals(data_a.length, b.length);
- for(int i=0; i<data_a.length; i++) {
- assertEquals(data_a[i],b[i]);
- }
+ assertArrayEquals(data_a, b);
}
// Change a few things
@@ -199,22 +196,16 @@ public final class TestComment2000 {
assertFalse(equals, "Arrays should not be equals");
// Check bytes are now the same
- ByteArrayOutputStream baosa = new ByteArrayOutputStream();
- ByteArrayOutputStream baosn = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baosa = new UnsynchronizedByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baosn = new UnsynchronizedByteArrayOutputStream();
ca.writeOut(baosa);
cn.writeOut(baosn);
byte[] ba = baosa.toByteArray();
byte[] bn = baosn.toByteArray();
// Should now be the same
- assertEquals(data_b.length, ba.length);
- for(int i=0; i<data_b.length; i++) {
- assertEquals(data_b[i],ba[i]);
- }
- assertEquals(data_b.length, bn.length);
- for(int i=0; i<data_b.length; i++) {
- assertEquals(data_b[i],bn[i]);
- }
+ assertArrayEquals(data_b, ba);
+ assertArrayEquals(data_b, bn);
}
/**
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestComment2000Atom.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestComment2000Atom.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestComment2000Atom.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestComment2000Atom.java Fri May 14 00:37:50 2021
@@ -18,13 +18,14 @@
package org.apache.poi.hslf.record;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
-import java.io.ByteArrayOutputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.apache.poi.util.LocaleUtil;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
@@ -35,18 +36,18 @@ import org.junit.jupiter.api.Test;
public final class TestComment2000Atom {
// From a real file
private final byte[] data_a = new byte[] {
- 00, 00, 0xE1-256, 0x2E, 0x1C, 00, 00, 00,
- 01, 00, 00, 00, 0xD6-256, 07, 01, 00,
- 02, 00, 0x18, 00, 0x0A, 00, 0x1A, 00,
- 0x0F, 00, 0xCD-256, 00, 0x92-256, 00,
- 00, 00, 0x92-256, 00, 00, 00
+ 0, 0, 0xE1-256, 0x2E, 0x1C, 0, 0, 0,
+ 1, 0, 0, 0, 0xD6-256, 7, 1, 0,
+ 2, 0, 0x18, 0, 0x0A, 0, 0x1A, 0,
+ 0x0F, 0, 0xCD-256, 0, 0x92-256, 0,
+ 0, 0, 0x92-256, 0, 0, 0
};
private final byte[] data_b = new byte[] {
- 00, 00, 0xE1-256, 0x2E, 0x1C, 00, 00, 00,
- 05, 00, 00, 00, 0xD6-256, 0x07, 01, 00,
- 02, 00, 0x18, 00, 0x15, 00, 0x19, 00, 03,
- 00, 0xD5-256, 02, 0x0A, 00, 00, 00,
- 0x0E, 00, 00, 00
+ 0, 0, 0xE1-256, 0x2E, 0x1C, 0, 0, 0,
+ 5, 0, 0, 0, 0xD6-256, 0x07, 1, 0,
+ 2, 0, 0x18, 0, 0x15, 0, 0x19, 0, 3,
+ 0, 0xD5-256, 2, 0x0A, 0, 0, 0,
+ 0x0E, 0, 0, 0
};
private static SimpleDateFormat sdf;
@@ -60,7 +61,7 @@ public final class TestComment2000Atom {
@Test
void testRecordType() {
Comment2000Atom ca = new Comment2000Atom(data_a, 0, data_a.length);
- assertEquals(12001l, ca.getRecordType());
+ assertEquals(12001L, ca.getRecordType());
}
@Test
@@ -105,14 +106,10 @@ public final class TestComment2000Atom {
@Test
void testWrite() throws Exception {
Comment2000Atom ca = new Comment2000Atom(data_a, 0, data_a.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
ca.writeOut(baos);
byte[] b = baos.toByteArray();
-
- assertEquals(data_a.length, b.length);
- for(int i=0; i<data_a.length; i++) {
- assertEquals(data_a[i],b[i]);
- }
+ assertArrayEquals(data_a, b);
}
// Create A from scratch
@@ -130,14 +127,10 @@ public final class TestComment2000Atom {
a.setDate(date_a);
// Check it's now the same as a
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
a.writeOut(baos);
byte[] b = baos.toByteArray();
-
- assertEquals(data_a.length, b.length);
- for(int i=0; i<data_a.length; i++) {
- assertEquals(data_a[i],b[i]);
- }
+ assertArrayEquals(data_a, b);
}
// Try to turn a into b
@@ -157,14 +150,9 @@ public final class TestComment2000Atom {
ca.setYOffset(0x0E);
// Check bytes are now the same
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
ca.writeOut(baos);
byte[] b = baos.toByteArray();
-
- // Should now be the same
- assertEquals(data_b.length, b.length);
- for(int i=0; i<data_b.length; i++) {
- assertEquals(data_b[i],b[i]);
- }
+ assertArrayEquals(data_b, b);
}
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestCurrentUserAtom.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestCurrentUserAtom.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestCurrentUserAtom.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestCurrentUserAtom.java Fri May 14 00:37:50 2021
@@ -21,9 +21,9 @@ import static org.junit.jupiter.api.Asse
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertThrows;
-import java.io.ByteArrayOutputStream;
import java.io.InputStream;
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.apache.poi.POIDataSamples;
import org.apache.poi.hslf.exceptions.EncryptedPowerPointFileException;
import org.apache.poi.hslf.usermodel.HSLFSlideShowImpl;
@@ -89,7 +89,7 @@ public final class TestCurrentUserAtom {
cu.setCurrentEditOffset(0x2942);
// Check it matches
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
cu.writeOut(baos);
byte[] out = baos.toByteArray();
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestDocumentAtom.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestDocumentAtom.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestDocumentAtom.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestDocumentAtom.java Fri May 14 00:37:50 2021
@@ -23,8 +23,7 @@ import static org.junit.jupiter.api.Asse
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
-import java.io.ByteArrayOutputStream;
-
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.junit.jupiter.api.Test;
/**
@@ -41,7 +40,7 @@ public final class TestDocumentAtom {
@Test
void testRecordType() {
DocumentAtom da = new DocumentAtom(data_a, 0, data_a.length);
- assertEquals(1001l, da.getRecordType());
+ assertEquals(1001L, da.getRecordType());
}
@Test
@@ -67,7 +66,7 @@ public final class TestDocumentAtom {
void testSlideDetails() {
DocumentAtom da = new DocumentAtom(data_a, 0, data_a.length);
assertEquals(1, da.getFirstSlideNum());
- assertEquals(0, da.getSlideSizeType());
+ assertEquals(DocumentAtom.SlideSize.ON_SCREEN, da.getSlideSizeTypeEnum());
}
@Test
@@ -82,7 +81,7 @@ public final class TestDocumentAtom {
@Test
void testWrite() throws Exception {
DocumentAtom da = new DocumentAtom(data_a, 0, data_a.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
da.writeOut(baos);
assertArrayEquals(data_a, baos.toByteArray());
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestDocumentEncryption.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestDocumentEncryption.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestDocumentEncryption.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestDocumentEncryption.java Fri May 14 00:37:50 2021
@@ -23,12 +23,12 @@ import static org.junit.jupiter.api.Asse
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
+import java.io.InputStream;
import java.security.MessageDigest;
import java.util.List;
import org.apache.commons.codec.binary.Base64;
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.apache.poi.POIDataSamples;
import org.apache.poi.hpsf.DocumentSummaryInformation;
import org.apache.poi.hpsf.PropertySet;
@@ -44,7 +44,6 @@ import org.apache.poi.poifs.crypt.Crypto
import org.apache.poi.poifs.crypt.EncryptionInfo;
import org.apache.poi.poifs.crypt.HashAlgorithm;
import org.apache.poi.poifs.crypt.cryptoapi.CryptoAPIDecryptor;
-import org.apache.poi.poifs.crypt.cryptoapi.CryptoAPIEncryptionHeader;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
@@ -86,12 +85,12 @@ public class TestDocumentEncryption {
DocumentEncryptionAtom documentEncryptionAtom = hss.getDocumentEncryptionAtom();
assertNotNull(documentEncryptionAtom);
EncryptionInfo ei = documentEncryptionAtom.getEncryptionInfo();
- ((CryptoAPIEncryptionHeader) ei.getHeader()).setKeySize(0x78);
+ ei.getHeader().setKeySize(0x78);
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream bos = new UnsynchronizedByteArrayOutputStream();
hss.write(bos);
- try (POIFSFileSystem fs2 = new POIFSFileSystem(new ByteArrayInputStream(bos.toByteArray()));
+ try (POIFSFileSystem fs2 = new POIFSFileSystem(bos.toInputStream());
HSLFSlideShowImpl hss2 = new HSLFSlideShowImpl(fs2)) {
List<HSLFPictureData> picsActual = hss2.getPictureData();
@@ -109,9 +108,9 @@ public class TestDocumentEncryption {
void cryptoAPIEncryption() throws Exception {
/* documents with multiple edits need to be normalized for encryption */
String pptFile = "57272_corrupted_usereditatom.ppt";
- ByteArrayOutputStream encrypted = new ByteArrayOutputStream();
- ByteArrayOutputStream expected = new ByteArrayOutputStream();
- ByteArrayOutputStream actual = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream encrypted = new UnsynchronizedByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream expected = new UnsynchronizedByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream actual = new UnsynchronizedByteArrayOutputStream();
try {
try (POIFSFileSystem fs = new POIFSFileSystem(slTests.getFile(pptFile), true);
HSLFSlideShowImpl hss = new HSLFSlideShowImpl(fs)) {
@@ -126,8 +125,9 @@ public class TestDocumentEncryption {
}
// decrypted
- ByteArrayInputStream bis = new ByteArrayInputStream(encrypted.toByteArray());
- try (POIFSFileSystem fs = new POIFSFileSystem(bis);
+
+ try (InputStream bis = encrypted.toInputStream();
+ POIFSFileSystem fs = new POIFSFileSystem(bis);
HSLFSlideShowImpl hss = new HSLFSlideShowImpl(fs)) {
Biff8EncryptionKey.setCurrentUserPassword(null);
hss.write(actual);
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExControl.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExControl.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExControl.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExControl.java Fri May 14 00:37:50 2021
@@ -22,8 +22,7 @@ import static org.junit.jupiter.api.Asse
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
-import java.io.ByteArrayOutputStream;
-
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.junit.jupiter.api.Test;
/**
@@ -93,7 +92,7 @@ public final class TestExControl {
@Test
void testWrite() throws Exception {
ExControl record = new ExControl(data, 0, data.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
assertArrayEquals(data, baos.toByteArray());
}
@@ -116,7 +115,7 @@ public final class TestExControl {
record.setProgId("ShockwaveFlash.ShockwaveFlash.9");
record.setClipboardName("Shockwave Flash Object");
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
assertArrayEquals(data, baos.toByteArray());
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExHyperlink.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExHyperlink.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExHyperlink.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExHyperlink.java Fri May 14 00:37:50 2021
@@ -22,11 +22,11 @@ import static org.junit.jupiter.api.Asse
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
-import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.apache.poi.POIDataSamples;
import org.apache.poi.hslf.usermodel.HSLFSlideShow;
import org.apache.poi.hslf.usermodel.HSLFSlideShowImpl;
@@ -46,14 +46,14 @@ public final class TestExHyperlink {
ExHyperlink exHyperlink = new ExHyperlink(exHyperlinkBytes, 0, exHyperlinkBytes.length);
- assertEquals(4055l, exHyperlink.getRecordType());
+ assertEquals(4055L, exHyperlink.getRecordType());
assertEquals(3, exHyperlink.getExHyperlinkAtom().getNumber());
String expURL = "http://jakarta.apache.org/poi/hssf/";
assertEquals(expURL, exHyperlink.getLinkURL());
assertEquals(expURL, exHyperlink._getDetailsA());
assertEquals(expURL, exHyperlink._getDetailsB());
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
exHyperlink.writeOut(baos);
assertArrayEquals(exHyperlinkBytes, baos.toByteArray());
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExHyperlinkAtom.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExHyperlinkAtom.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExHyperlinkAtom.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExHyperlinkAtom.java Fri May 14 00:37:50 2021
@@ -21,8 +21,7 @@ package org.apache.poi.hslf.record;
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
-import java.io.ByteArrayOutputStream;
-
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.junit.jupiter.api.Test;
/**
@@ -57,7 +56,7 @@ public class TestExHyperlinkAtom {
@Test
void testWrite() throws Exception {
ExHyperlinkAtom eha = new ExHyperlinkAtom(data_a, 0, data_a.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
eha.writeOut(baos);
assertArrayEquals(data_a, baos.toByteArray());
}
@@ -71,7 +70,7 @@ public class TestExHyperlinkAtom {
eha.setNumber(1);
// Check it's now the same as a
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
eha.writeOut(baos);
assertArrayEquals(data_a, baos.toByteArray());
}
@@ -85,7 +84,7 @@ public class TestExHyperlinkAtom {
eha.setNumber(4);
// Check bytes are now the same
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
eha.writeOut(baos);
assertArrayEquals(data_b, baos.toByteArray());
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExMediaAtom.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExMediaAtom.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExMediaAtom.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExMediaAtom.java Fri May 14 00:37:50 2021
@@ -23,8 +23,7 @@ import static org.junit.jupiter.api.Asse
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
-import java.io.ByteArrayOutputStream;
-
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.junit.jupiter.api.Test;
/**
@@ -50,7 +49,7 @@ public final class TestExMediaAtom {
@Test
void testWrite() throws Exception {
ExMediaAtom record = new ExMediaAtom(data, 0, data.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
byte[] b = baos.toByteArray();
@@ -68,7 +67,7 @@ public final class TestExMediaAtom {
record.setFlag(HeadersFootersAtom.fHasTodayDate, false);
record.setFlag(HeadersFootersAtom.fHasFooter, false);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
byte[] b = baos.toByteArray();
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExObjListAtom.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExObjListAtom.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExObjListAtom.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExObjListAtom.java Fri May 14 00:37:50 2021
@@ -20,8 +20,7 @@ package org.apache.poi.hslf.record;
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
-import java.io.ByteArrayOutputStream;
-
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.apache.poi.ss.formula.functions.BaseTestNumeric;
import org.junit.jupiter.api.Test;
@@ -57,7 +56,7 @@ public class TestExObjListAtom {
@Test
void testWrite() throws Exception {
ExObjListAtom eoa = new ExObjListAtom(data_a, 0, data_a.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
eoa.writeOut(baos);
assertArrayEquals(data_a, baos.toByteArray());
}
@@ -71,7 +70,7 @@ public class TestExObjListAtom {
eoa.setObjectIDSeed(1);
// Check it's now the same as a
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
eoa.writeOut(baos);
assertArrayEquals(data_a, baos.toByteArray());
}
@@ -85,7 +84,7 @@ public class TestExObjListAtom {
eoa.setObjectIDSeed(4);
// Check bytes are now the same
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
eoa.writeOut(baos);
assertArrayEquals(data_b, baos.toByteArray());
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExOleObjAtom.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExOleObjAtom.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExOleObjAtom.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExOleObjAtom.java Fri May 14 00:37:50 2021
@@ -20,8 +20,7 @@ package org.apache.poi.hslf.record;
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
-import java.io.ByteArrayOutputStream;
-
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.junit.jupiter.api.Test;
/**
@@ -50,7 +49,7 @@ public final class TestExOleObjAtom {
@Test
void testWrite() throws Exception {
ExOleObjAtom record = new ExOleObjAtom(data, 0, data.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
assertArrayEquals(data, baos.toByteArray());
}
@@ -65,7 +64,7 @@ public final class TestExOleObjAtom {
record.setObjStgDataRef(2);
record.setOptions(1283584);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
assertArrayEquals(data, baos.toByteArray());
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExOleObjStg.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExOleObjStg.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExOleObjStg.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExOleObjStg.java Fri May 14 00:37:50 2021
@@ -22,12 +22,12 @@ import static org.junit.jupiter.api.Asse
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
-import java.io.ByteArrayOutputStream;
import java.io.IOException;
-import java.io.InputStream;
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.apache.poi.poifs.filesystem.DocumentEntry;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
+import org.apache.poi.util.IOUtils;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
@@ -58,7 +58,7 @@ public final class TestExOleObjStg {
assertEquals(RecordTypes.ExOleObjStg.typeID, record.getRecordType());
int len = record.getDataLength();
- byte[] oledata = readAll(record.getData());
+ byte[] oledata = IOUtils.toByteArray(record.getData());
assertEquals(len, oledata.length);
try (POIFSFileSystem fs = new POIFSFileSystem(record.getData())) {
@@ -70,7 +70,7 @@ public final class TestExOleObjStg {
@Test
void testWrite() throws Exception {
ExOleObjStg record = new ExOleObjStg(data, 0, data.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
byte[] b = baos.toByteArray();
@@ -80,7 +80,7 @@ public final class TestExOleObjStg {
@Test
void testNewRecord() throws Exception {
ExOleObjStg src = new ExOleObjStg(data, 0, data.length);
- byte[] oledata = readAll(src.getData());
+ byte[] oledata = IOUtils.toByteArray(src.getData());
ExOleObjStg tgt = new ExOleObjStg();
tgt.setData(oledata);
@@ -88,22 +88,11 @@ public final class TestExOleObjStg {
assertEquals(src.getDataLength(), tgt.getDataLength());
- ByteArrayOutputStream out = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream out = new UnsynchronizedByteArrayOutputStream();
tgt.writeOut(out);
byte[] b = out.toByteArray();
assertEquals(data.length, b.length);
assertArrayEquals(data, b);
}
-
- private byte[] readAll(InputStream is) throws IOException {
- int pos;
- byte[] chunk = new byte[1024];
- ByteArrayOutputStream out = new ByteArrayOutputStream();
- while((pos = is.read(chunk)) > 0){
- out.write(chunk, 0, pos);
- }
- return out.toByteArray();
-
- }
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExVideoContainer.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExVideoContainer.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExVideoContainer.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestExVideoContainer.java Fri May 14 00:37:50 2021
@@ -23,8 +23,7 @@ import static org.junit.jupiter.api.Asse
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotNull;
-import java.io.ByteArrayOutputStream;
-
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.junit.jupiter.api.Test;
/**
@@ -68,7 +67,7 @@ public final class TestExVideoContainer
@Test
void testWrite() throws Exception {
ExVideoContainer record = new ExVideoContainer(data, 0, data.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
assertArrayEquals(data, baos.toByteArray());
}
@@ -79,7 +78,7 @@ public final class TestExVideoContainer
record.getExMediaAtom().setObjectId(1);
record.getPathAtom().setText("D:\\projects\\SchulerAG\\mcom_v_1_0_4\\view\\data\\tests\\images\\cards.mpg");
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
assertArrayEquals(data, baos.toByteArray());
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestFontCollection.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestFontCollection.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestFontCollection.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestFontCollection.java Fri May 14 00:37:50 2021
@@ -19,12 +19,13 @@ package org.apache.poi.hslf.record;
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertNull;
-import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.apache.poi.POIDataSamples;
import org.apache.poi.hslf.usermodel.HSLFFontInfo;
import org.apache.poi.hslf.usermodel.HSLFFontInfoPredefined;
@@ -78,16 +79,22 @@ public final class TestFontCollection {
assertEquals(child.length, 3);
// Check we get the right font name for the indicies
- assertEquals("Times New Roman", fonts.getFontInfo(0).getTypeface());
- assertEquals("Helvetica", fonts.getFontInfo(1).getTypeface());
- assertEquals("Arial", fonts.getFontInfo(2).getTypeface());
+ fi = fonts.getFontInfo(0);
+ assertNotNull(fi);
+ assertEquals("Times New Roman", fi.getTypeface());
+ fi = fonts.getFontInfo(1);
+ assertNotNull(fi);
+ assertEquals("Helvetica", fi.getTypeface());
+ fi = fonts.getFontInfo(2);
+ assertNotNull(fi);
+ assertEquals("Arial", fi.getTypeface());
assertNull(fonts.getFontInfo(3));
}
@Test
void testWrite() throws Exception {
FontCollection fonts = new FontCollection(data, 0, data.length);
- ByteArrayOutputStream out = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream out = new UnsynchronizedByteArrayOutputStream();
fonts.writeOut(out);
byte[] recdata = out.toByteArray();
assertArrayEquals(recdata, data);
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestHeadersFootersAtom.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestHeadersFootersAtom.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestHeadersFootersAtom.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestHeadersFootersAtom.java Fri May 14 00:37:50 2021
@@ -23,8 +23,7 @@ import static org.junit.jupiter.api.Asse
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
-import java.io.ByteArrayOutputStream;
-
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.junit.jupiter.api.Test;
/**
@@ -55,7 +54,7 @@ public final class TestHeadersFootersAto
@Test
void testWrite() throws Exception {
HeadersFootersAtom record = new HeadersFootersAtom(data, 0, data.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
assertArrayEquals(data, baos.toByteArray());
}
@@ -67,7 +66,7 @@ public final class TestHeadersFootersAto
record.setFlag(HeadersFootersAtom.fHasTodayDate, true);
record.setFlag(HeadersFootersAtom.fHasFooter, true);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
assertArrayEquals(data, baos.toByteArray());
}
Modified: poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestHeadersFootersContainer.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestHeadersFootersContainer.java?rev=1889871&r1=1889870&r2=1889871&view=diff
==============================================================================
--- poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestHeadersFootersContainer.java (original)
+++ poi/trunk/poi-scratchpad/src/test/java/org/apache/poi/hslf/record/TestHeadersFootersContainer.java Fri May 14 00:37:50 2021
@@ -23,8 +23,7 @@ import static org.junit.jupiter.api.Asse
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertNull;
-import java.io.ByteArrayOutputStream;
-
+import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.junit.jupiter.api.Test;
/**
@@ -76,7 +75,7 @@ public final class TestHeadersFootersCon
@Test
void testWriteSlideHeadersFootersContainer() throws Exception {
HeadersFootersContainer record = new HeadersFootersContainer(slideData, 0, slideData.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
assertArrayEquals(slideData, baos.toByteArray());
}
@@ -100,7 +99,7 @@ public final class TestHeadersFootersCon
assertEquals(HeadersFootersContainer.FOOTERATOM, csFooter.getOptions() >> 4);
csFooter.setText("My Footer - 1");
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
assertArrayEquals(slideData, baos.toByteArray());
}
@@ -129,7 +128,7 @@ public final class TestHeadersFootersCon
@Test
void testWriteNotesHeadersFootersContainer() throws Exception {
HeadersFootersContainer record = new HeadersFootersContainer(notesData, 0, notesData.length);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
assertArrayEquals(notesData, baos.toByteArray());
}
@@ -161,7 +160,7 @@ public final class TestHeadersFootersCon
assertEquals(HeadersFootersContainer.FOOTERATOM, csFooter.getOptions() >> 4);
csFooter.setText("Note Footer");
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream();
record.writeOut(baos);
assertArrayEquals(notesData, baos.toByteArray());
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org