aboutsummaryrefslogtreecommitdiffstats
path: root/src/testcases
diff options
context:
space:
mode:
authorDominik Stadler <centic@apache.org>2019-12-15 14:52:45 +0000
committerDominik Stadler <centic@apache.org>2019-12-15 14:52:45 +0000
commit2748844549b50dc11e8ef19dcd506c820c1a1e19 (patch)
treeaac3ba192034ff20e75a065a116e4424de0a5870 /src/testcases
parent57e5e87e58c8eabfc2fd1f3b14808814d668a83f (diff)
downloadpoi-2748844549b50dc11e8ef19dcd506c820c1a1e19.tar.gz
poi-2748844549b50dc11e8ef19dcd506c820c1a1e19.zip
Bug 63749; Make getLastRowNum() and getFirstRow() return -1 instead of 0 on empty Sheets
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1871589 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/testcases')
-rw-r--r--src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java6
-rw-r--r--src/testcases/org/apache/poi/ss/usermodel/BaseTestRow.java28
-rw-r--r--src/testcases/org/apache/poi/ss/usermodel/BaseTestSheet.java8
-rw-r--r--src/testcases/org/apache/poi/ss/usermodel/BaseTestXEvaluationSheet.java2
4 files changed, 36 insertions, 8 deletions
diff --git a/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java b/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java
index 46056ff82e..b0aa06cb4e 100644
--- a/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java
+++ b/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java
@@ -1230,9 +1230,9 @@ public final class TestBugs extends BaseTestBugzillaIssues {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet s = wb.createSheet();
- // No rows, everything is 0
- assertEquals(0, s.getFirstRowNum());
- assertEquals(0, s.getLastRowNum());
+ // No rows, first/last return -1
+ assertEquals(-1, s.getFirstRowNum());
+ assertEquals(-1, s.getLastRowNum());
assertEquals(0, s.getPhysicalNumberOfRows());
// One row, most things are 0, physical is 1
diff --git a/src/testcases/org/apache/poi/ss/usermodel/BaseTestRow.java b/src/testcases/org/apache/poi/ss/usermodel/BaseTestRow.java
index 6e663c37ee..1634330138 100644
--- a/src/testcases/org/apache/poi/ss/usermodel/BaseTestRow.java
+++ b/src/testcases/org/apache/poi/ss/usermodel/BaseTestRow.java
@@ -532,4 +532,32 @@ public abstract class BaseTestRow {
assertNull(f1);
}
}
+
+ @Test
+ public void testLastRowEmptySheet() {
+ Workbook wb = _testDataProvider.createWorkbook();
+ Sheet sheet = wb.createSheet("sheet1");
+
+ assertEquals("Sheet without rows should return -1 as lastRowNum",
+ -1, sheet.getLastRowNum());
+ Row row = sheet.createRow(0);
+ assertNotNull(row);
+
+ assertEquals("Sheet with one row should return 0 as lastRowNum",
+ 0, sheet.getLastRowNum());
+ }
+
+ @Test
+ public void testFirstRowEmptySheet() {
+ Workbook wb = _testDataProvider.createWorkbook();
+ Sheet sheet = wb.createSheet("sheet1");
+
+ assertEquals("Sheet without rows should return -1 as firstRowNum",
+ -1, sheet.getFirstRowNum());
+ Row row = sheet.createRow(0);
+ assertNotNull(row);
+
+ assertEquals("Sheet with one row should return 0 as firstRowNum",
+ 0, sheet.getFirstRowNum());
+ }
}
diff --git a/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheet.java b/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheet.java
index 657442026f..02930a9959 100644
--- a/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheet.java
+++ b/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheet.java
@@ -130,8 +130,8 @@ public abstract class BaseTestSheet {
Workbook workbook = _testDataProvider.createWorkbook();
Sheet sheet1 = workbook.createSheet();
assertEquals(0, sheet1.getPhysicalNumberOfRows());
- assertEquals(0, sheet1.getFirstRowNum());
- assertEquals(0, sheet1.getLastRowNum());
+ assertEquals(-1, sheet1.getFirstRowNum());
+ assertEquals(-1, sheet1.getLastRowNum());
Row row0 = sheet1.createRow(0);
assertEquals(1, sheet1.getPhysicalNumberOfRows());
@@ -139,8 +139,8 @@ public abstract class BaseTestSheet {
assertEquals(0, sheet1.getLastRowNum());
sheet1.removeRow(row0);
assertEquals(0, sheet1.getPhysicalNumberOfRows());
- assertEquals(0, sheet1.getFirstRowNum());
- assertEquals(0, sheet1.getLastRowNum());
+ assertEquals(-1, sheet1.getFirstRowNum());
+ assertEquals(-1, sheet1.getLastRowNum());
sheet1.createRow(1);
Row row2 = sheet1.createRow(2);
diff --git a/src/testcases/org/apache/poi/ss/usermodel/BaseTestXEvaluationSheet.java b/src/testcases/org/apache/poi/ss/usermodel/BaseTestXEvaluationSheet.java
index cd60b3f6ff..f21842b4ec 100644
--- a/src/testcases/org/apache/poi/ss/usermodel/BaseTestXEvaluationSheet.java
+++ b/src/testcases/org/apache/poi/ss/usermodel/BaseTestXEvaluationSheet.java
@@ -36,7 +36,7 @@ public abstract class BaseTestXEvaluationSheet {
Sheet underlyingSheet = sheetPair.getKey();
EvaluationSheet instance = sheetPair.getValue();
- assertEquals(0, instance.getLastRowNum());
+ assertEquals(-1, instance.getLastRowNum());
underlyingSheet.createRow(0);
underlyingSheet.createRow(1);