You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by jo...@apache.org on 2008/05/13 17:25:51 UTC
svn commit: r655912 -
/poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFRow.java
Author: josh
Date: Tue May 13 08:25:51 2008
New Revision: 655912
URL: http://svn.apache.org/viewvc?rev=655912&view=rev
Log:
added test case for reported bug 44987
Modified:
poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFRow.java
Modified: poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFRow.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFRow.java?rev=655912&r1=655911&r2=655912&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFRow.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFRow.java Tue May 13 08:25:51 2008
@@ -17,11 +17,10 @@
package org.apache.poi.hssf.usermodel;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-
import junit.framework.TestCase;
+import org.apache.poi.hssf.HSSFTestDataSamples;
+
/**
* Test HSSFRow is okay.
*
@@ -32,7 +31,7 @@
public void testLastAndFirstColumns() {
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet();
- HSSFRow row = sheet.createRow((short) 0);
+ HSSFRow row = sheet.createRow(0);
assertEquals(-1, row.getFirstCellNum());
assertEquals(-1, row.getLastCellNum());
@@ -50,7 +49,35 @@
assertEquals(4, row.getLastCellNum());
}
- public void testRemoveCell() throws Exception {
+ /**
+ * Make sure that there is no cross-talk between rows especially with getFirstCellNum and getLastCellNum
+ * This test was added in response to bug report 44987.
+ */
+ public void testBoundsInMultipleRows() {
+ HSSFWorkbook workbook = new HSSFWorkbook();
+ HSSFSheet sheet = workbook.createSheet();
+ HSSFRow rowA = sheet.createRow(0);
+
+ rowA.createCell((short) 10);
+ rowA.createCell((short) 5);
+ assertEquals(5, rowA.getFirstCellNum());
+ assertEquals(11, rowA.getLastCellNum());
+
+ HSSFRow rowB = sheet.createRow(1);
+ rowB.createCell((short) 15);
+ rowB.createCell((short) 30);
+ assertEquals(15, rowB.getFirstCellNum());
+ assertEquals(31, rowB.getLastCellNum());
+
+ assertEquals(5, rowA.getFirstCellNum());
+ assertEquals(11, rowA.getLastCellNum());
+ rowA.createCell((short) 50);
+ assertEquals(51, rowA.getLastCellNum());
+
+ assertEquals(31, rowB.getLastCellNum());
+ }
+
+ public void testRemoveCell() {
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet();
HSSFRow row = sheet.createRow((short) 0);
@@ -76,16 +103,11 @@
assertEquals(0, data[6]);
assertEquals(0, data[8]);
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
- workbook.write(baos);
- baos.close();
- ByteArrayInputStream inputStream = new ByteArrayInputStream(baos.toByteArray());
- workbook = new HSSFWorkbook(inputStream);
+ workbook = HSSFTestDataSamples.writeOutAndReadBack(workbook);
sheet = workbook.getSheetAt(0);
- inputStream.close();
- assertEquals(-1, sheet.getRow((short) 0).getLastCellNum());
- assertEquals(-1, sheet.getRow((short) 0).getFirstCellNum());
+ assertEquals(-1, sheet.getRow(0).getLastCellNum());
+ assertEquals(-1, sheet.getRow(0).getFirstCellNum());
}
public void testMoveCell() {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org