You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ni...@apache.org on 2008/06/16 15:39:45 UTC

svn commit: r668155 - in /poi/trunk/src: java/org/apache/poi/hssf/record/formula/Area3DPtg.java testcases/org/apache/poi/hssf/data/30978-deleted.xls testcases/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java

Author: nick
Date: Mon Jun 16 06:39:44 2008
New Revision: 668155

URL: http://svn.apache.org/viewvc?rev=668155&view=rev
Log:
Make the test related to bug #30978, which shows that named ranges pointing to deleted sheets is ok, more complete

Modified:
    poi/trunk/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java
    poi/trunk/src/testcases/org/apache/poi/hssf/data/30978-deleted.xls
    poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java?rev=668155&r1=668154&r2=668155&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java Mon Jun 16 06:39:44 2008
@@ -276,8 +276,8 @@
 			} else {
 				// Normal
 				SheetNameFormatter.appendFormat(retval, sheetName);
-				retval.append( '!' );
 			}
+			retval.append( '!' );
 		}
 		
 		// Now the normal area bit

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/data/30978-deleted.xls
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/data/30978-deleted.xls?rev=668155&r1=668154&r2=668155&view=diff
==============================================================================
Binary files - no diff available.

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java?rev=668155&r1=668154&r2=668155&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFWorkbook.java Mon Jun 16 06:39:44 2008
@@ -410,19 +410,26 @@
      */
     public void testNamesToDeleteSheets() throws Exception {
     	HSSFWorkbook b = openSample("30978-deleted.xls");
-    	assertEquals(1, b.getNumberOfNames());
+    	assertEquals(3, b.getNumberOfNames());
     	
-    	// Sheet 2 deleted
+    	// Sheet 2 is deleted
     	assertEquals("Sheet1", b.getSheetName(0));
     	assertEquals("Sheet3", b.getSheetName(1));
     	
+    	Area3DPtg ptg;
+    	NameRecord nr;
+    	HSSFName n;
+    	
+    	/* ======= Name pointing to deleted sheet ====== */
+    	
     	// First at low level
-    	NameRecord nr = b.getWorkbook().getNameRecord(0);
+    	nr = b.getWorkbook().getNameRecord(0);
     	assertEquals("On2", nr.getNameText());
+    	assertEquals(0, nr.getIndexToSheet());
     	assertEquals(1, nr.getExternSheetNumber());
     	assertEquals(1, nr.getNameDefinition().size());
     	
-    	Area3DPtg ptg = (Area3DPtg)nr.getNameDefinition().get(0);
+    	ptg = (Area3DPtg)nr.getNameDefinition().get(0);
     	assertEquals(1, ptg.getExternSheetIndex());
     	assertEquals(0, ptg.getFirstColumn());
     	assertEquals(0, ptg.getFirstRow());
@@ -430,10 +437,56 @@
     	assertEquals(2, ptg.getLastRow());
     	
     	// Now at high level
-    	HSSFName n = b.getNameAt(0);
+    	n = b.getNameAt(0);
     	assertEquals("On2", n.getNameName());
     	assertEquals("", n.getSheetName());
-    	assertEquals("#REF$A$1:$A$3", n.getReference());
+    	assertEquals("#REF!$A$1:$A$3", n.getReference());
+    	
+    	
+    	/* ======= Name pointing to 1st sheet ====== */
+    	
+    	// First at low level
+    	nr = b.getWorkbook().getNameRecord(1);
+    	assertEquals("OnOne", nr.getNameText());
+    	assertEquals(0, nr.getIndexToSheet());
+    	assertEquals(0, nr.getExternSheetNumber());
+    	assertEquals(1, nr.getNameDefinition().size());
+    	
+    	ptg = (Area3DPtg)nr.getNameDefinition().get(0);
+    	assertEquals(0, ptg.getExternSheetIndex());
+    	assertEquals(0, ptg.getFirstColumn());
+    	assertEquals(2, ptg.getFirstRow());
+    	assertEquals(0, ptg.getLastColumn());
+    	assertEquals(3, ptg.getLastRow());
+    	
+    	// Now at high level
+    	n = b.getNameAt(1);
+    	assertEquals("OnOne", n.getNameName());
+    	assertEquals("Sheet1", n.getSheetName());
+    	assertEquals("Sheet1!$A$3:$A$4", n.getReference());
+    	
+    	
+    	/* ======= Name pointing to 3rd sheet ====== */
+    	
+    	// First at low level
+    	nr = b.getWorkbook().getNameRecord(2);
+    	assertEquals("OnSheet3", nr.getNameText());
+    	assertEquals(0, nr.getIndexToSheet());
+    	assertEquals(2, nr.getExternSheetNumber());
+    	assertEquals(1, nr.getNameDefinition().size());
+    	
+    	ptg = (Area3DPtg)nr.getNameDefinition().get(0);
+    	assertEquals(2, ptg.getExternSheetIndex());
+    	assertEquals(0, ptg.getFirstColumn());
+    	assertEquals(0, ptg.getFirstRow());
+    	assertEquals(0, ptg.getLastColumn());
+    	assertEquals(1, ptg.getLastRow());
+    	
+    	// Now at high level
+    	n = b.getNameAt(2);
+    	assertEquals("OnSheet3", n.getNameName());
+    	assertEquals("Sheet3", n.getSheetName());
+    	assertEquals("Sheet3!$A$1:$A$2", n.getReference());
     }
     
     /**



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org