aboutsummaryrefslogtreecommitdiffstats
path: root/src/testcases/org/apache/poi/ss
diff options
context:
space:
mode:
authorDavid North <dnorth@apache.org>2016-07-29 13:24:00 +0000
committerDavid North <dnorth@apache.org>2016-07-29 13:24:00 +0000
commitaa17ae0b1ee3f4e95ee6ea2e8d00da9c4c43634b (patch)
treeec7e6fa53b80327f93d63025de8b34d6add3d8ff /src/testcases/org/apache/poi/ss
parent07b249db81b5a71752eb232435c116d64db3f4ea (diff)
downloadpoi-aa17ae0b1ee3f4e95ee6ea2e8d00da9c4c43634b.tar.gz
poi-aa17ae0b1ee3f4e95ee6ea2e8d00da9c4c43634b.zip
Introduce name-based methods for access to named ranges in a workbook, and deprecate the old index-based methods.
Re-organise internally to use a map so that lookup is O(1) rather than O(n ranges). Add a dependency on commons collections 4, also ASL licensed so no problem. https://bz.apache.org/bugzilla/show_bug.cgi?id=59734 git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1754521 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/testcases/org/apache/poi/ss')
-rw-r--r--src/testcases/org/apache/poi/ss/usermodel/BaseTestNamedRange.java20
-rw-r--r--src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetShiftRows.java8
2 files changed, 11 insertions, 17 deletions
diff --git a/src/testcases/org/apache/poi/ss/usermodel/BaseTestNamedRange.java b/src/testcases/org/apache/poi/ss/usermodel/BaseTestNamedRange.java
index 75fb77e827..92e362df57 100644
--- a/src/testcases/org/apache/poi/ss/usermodel/BaseTestNamedRange.java
+++ b/src/testcases/org/apache/poi/ss/usermodel/BaseTestNamedRange.java
@@ -201,11 +201,7 @@ public abstract class BaseTestNamedRange {
assertEquals("The sheet already contains this name: aaa", e.getMessage());
}
- int cnt = 0;
- for (int i = 0; i < wb.getNumberOfNames(); i++) {
- if("aaa".equals(wb.getNameAt(i).getNameName())) cnt++;
- }
- assertEquals(3, cnt);
+ assertEquals(3, wb.getNames("aaa").size());
wb.close();
}
@@ -250,11 +246,11 @@ public abstract class BaseTestNamedRange {
// Write the workbook to a file
// Read the Excel file and verify its content
Workbook wb2 = _testDataProvider.writeOutAndReadBack(wb1);
- Name nm1 = wb2.getNameAt(wb2.getNameIndex("RangeTest1"));
+ Name nm1 = wb2.getName("RangeTest1");
assertTrue("Name is "+nm1.getNameName(),"RangeTest1".equals(nm1.getNameName()));
assertTrue("Reference is "+nm1.getRefersToFormula(),(wb2.getSheetName(0)+"!$A$1:$L$41").equals(nm1.getRefersToFormula()));
- Name nm2 = wb2.getNameAt(wb2.getNameIndex("RangeTest2"));
+ Name nm2 = wb2.getName("RangeTest2");
assertTrue("Name is "+nm2.getNameName(),"RangeTest2".equals(nm2.getNameName()));
assertTrue("Reference is "+nm2.getRefersToFormula(),(wb2.getSheetName(1)+"!$A$1:$O$21").equals(nm2.getRefersToFormula()));
@@ -466,11 +462,11 @@ public abstract class BaseTestNamedRange {
wb1.getNameAt(0);
Workbook wb2 = _testDataProvider.writeOutAndReadBack(wb1);
- Name nm =wb2.getNameAt(wb2.getNameIndex("RangeTest"));
+ Name nm =wb2.getName("RangeTest");
assertTrue("Name is "+nm.getNameName(),"RangeTest".equals(nm.getNameName()));
assertTrue("Reference is "+nm.getRefersToFormula(),(wb2.getSheetName(0)+"!$D$4:$E$8").equals(nm.getRefersToFormula()));
- nm = wb2.getNameAt(wb2.getNameIndex("AnotherTest"));
+ nm = wb2.getName("AnotherTest");
assertTrue("Name is "+nm.getNameName(),"AnotherTest".equals(nm.getNameName()));
assertTrue("Reference is "+nm.getRefersToFormula(),newNamedRange2.getRefersToFormula().equals(nm.getRefersToFormula()));
@@ -499,8 +495,7 @@ public abstract class BaseTestNamedRange {
namedCell.setRefersToFormula(reference);
// retrieve the newly created named range
- int namedCellIdx = wb.getNameIndex(cellName);
- Name aNamedCell = wb.getNameAt(namedCellIdx);
+ Name aNamedCell = wb.getName(cellName);
assertNotNull(aNamedCell);
// retrieve the cell at the named range and test its contents
@@ -540,8 +535,7 @@ public abstract class BaseTestNamedRange {
namedCell.setRefersToFormula(reference);
// retrieve the newly created named range
- int namedCellIdx = wb.getNameIndex(cname);
- Name aNamedCell = wb.getNameAt(namedCellIdx);
+ Name aNamedCell = wb.getName(cname);
assertNotNull(aNamedCell);
// retrieve the cell at the named range and test its contents
diff --git a/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetShiftRows.java b/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetShiftRows.java
index 3f8febb11a..efae0d80c6 100644
--- a/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetShiftRows.java
+++ b/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetShiftRows.java
@@ -261,17 +261,17 @@ public abstract class BaseTestSheetShiftRows {
name4.setSheetIndex(1);
sheet1.shiftRows(0, 1, 2); //shift down the top row on Sheet1.
- name1 = wb.getNameAt(0);
+ name1 = wb.getName("name1");
assertEquals("Sheet1!$A$3+Sheet1!$B$3", name1.getRefersToFormula());
- name2 = wb.getNameAt(1);
+ name2 = wb.getName("name2");
assertEquals("Sheet1!$A$3", name2.getRefersToFormula());
//name3 and name4 refer to Sheet2 and should not be affected
- name3 = wb.getNameAt(2);
+ name3 = wb.getName("name3");
assertEquals("Sheet2!$A$1", name3.getRefersToFormula());
- name4 = wb.getNameAt(3);
+ name4 = wb.getName("name4");
assertEquals("A1", name4.getRefersToFormula());
wb.close();