Patch from Josh from bug #44437 - improved unit test for poifs

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@629831 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Nick Burch 2008-02-21 15:40:34 +00:00
parent 38421b7650
commit 1030ecb726
3 changed files with 23 additions and 12 deletions

View File

@ -523,8 +523,7 @@ under the License.
<batchtest todir="${main.reports.test}"> <batchtest todir="${main.reports.test}">
<fileset dir="${main.src.test}"> <fileset dir="${main.src.test}">
<include name="**/Test*.java"/> <include name="**/Test*.java"/>
<exclude name="**/AllTests.java"/> <exclude name="**/All*Tests.java"/>
<exclude name="**/TestEmptyDocument.java"/>
<exclude name="**/TestUnfixedBugs.java"/> <exclude name="**/TestUnfixedBugs.java"/>
<exclude name="**/TestcaseRecordInputStream.java"/> <exclude name="**/TestcaseRecordInputStream.java"/>
</fileset> </fileset>

View File

@ -1,4 +1,3 @@
/* ==================================================================== /* ====================================================================
Licensed to the Apache Software Foundation (ASF) under one or more Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with contributor license agreements. See the NOTICE file distributed with
@ -100,15 +99,20 @@ import org.apache.poi.hssf.usermodel.TestReadWriteChart;
import org.apache.poi.hssf.usermodel.TestSanityChecker; import org.apache.poi.hssf.usermodel.TestSanityChecker;
import org.apache.poi.hssf.usermodel.TestSheetShiftRows; import org.apache.poi.hssf.usermodel.TestSheetShiftRows;
import org.apache.poi.hssf.usermodel.TestWorkbook; import org.apache.poi.hssf.usermodel.TestWorkbook;
import org.apache.poi.hssf.util.AllHSSFUtilTests; import org.apache.poi.hssf.util.TestAreaReference;
import org.apache.poi.hssf.util.TestCellReference;
import org.apache.poi.hssf.util.TestRKUtil;
import org.apache.poi.hssf.util.TestRangeAddress;
import org.apache.poi.hssf.util.TestSheetReferences;
/** /**
* Test Suite for running just HSSF tests. Mostly * Test Suite for all sub-packages of org.apache.poi.hssf<br/>
* this is for my convienience. *
* Mostly this is for my convenience.
* *
* @author Andrew C. Oliver acoliver@apache.org * @author Andrew C. Oliver acoliver@apache.org
*/ */
public class HSSFTests public final class HSSFTests
{ {
public static void main(String[] args) public static void main(String[] args)
@ -119,7 +123,7 @@ public class HSSFTests
public static Test suite() public static Test suite()
{ {
TestSuite suite = TestSuite suite =
new TestSuite("Test for org.apache.poi.hssf.usermodel"); new TestSuite("Tests for org.apache.poi.hssf");
//$JUnit-BEGIN$ //$JUnit-BEGIN$
suite.addTest(new TestSuite(TestBugs.class)); suite.addTest(new TestSuite(TestBugs.class));
@ -198,7 +202,11 @@ public class HSSFTests
suite.addTest(new TestSuite(TestUnitsRecord.class)); suite.addTest(new TestSuite(TestUnitsRecord.class));
suite.addTest(new TestSuite(TestValueRangeRecord.class)); suite.addTest(new TestSuite(TestValueRangeRecord.class));
suite.addTest(new TestSuite(TestRowRecordsAggregate.class)); suite.addTest(new TestSuite(TestRowRecordsAggregate.class));
suite.addTest(AllHSSFUtilTests.suite()); suite.addTest(new TestSuite(TestAreaReference.class));
suite.addTest(new TestSuite(TestCellReference.class));
suite.addTest(new TestSuite(TestRangeAddress.class));
suite.addTest(new TestSuite(TestRKUtil.class));
suite.addTest(new TestSuite(TestSheetReferences.class));
suite.addTest(AllFormulaTests.suite()); suite.addTest(AllFormulaTests.suite());

View File

@ -20,6 +20,7 @@ package org.apache.poi.poifs.filesystem;
import java.io.IOException; import java.io.IOException;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
import java.util.Arrays;
import junit.framework.TestCase; import junit.framework.TestCase;
@ -157,12 +158,15 @@ public class TestEmptyDocument extends TestCase {
DocumentEntry entry = (DocumentEntry) fs.getRoot().getEntry("Empty"); DocumentEntry entry = (DocumentEntry) fs.getRoot().getEntry("Empty");
assertEquals("Expected zero size", 0, entry.getSize()); assertEquals("Expected zero size", 0, entry.getSize());
byte[] actualReadbackData;
actualReadbackData = IOUtils.toByteArray(new DocumentInputStream(entry));
assertEquals("Expected zero read from stream", 0, assertEquals("Expected zero read from stream", 0,
IOUtils.toByteArray(new DocumentInputStream(entry)).length); actualReadbackData.length);
entry = (DocumentEntry) fs.getRoot().getEntry("NotEmpty"); entry = (DocumentEntry) fs.getRoot().getEntry("NotEmpty");
actualReadbackData = IOUtils.toByteArray(new DocumentInputStream(entry));
assertEquals("Expected size was wrong", testData.length, entry.getSize()); assertEquals("Expected size was wrong", testData.length, entry.getSize());
assertEquals("Expected different data read from stream", testData, assertTrue("Expected different data read from stream",
IOUtils.toByteArray(new DocumentInputStream(entry))); Arrays.equals(testData, actualReadbackData));
} }
} }