]> source.dussan.org Git - poi.git/commitdiff
Testcase for 15375. Sync from Branch
authorAvik Sengupta <avik@apache.org>
Thu, 9 Oct 2003 15:21:15 +0000 (15:21 +0000)
committerAvik Sengupta <avik@apache.org>
Thu, 9 Oct 2003 15:21:15 +0000 (15:21 +0000)
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353384 13f79535-47bb-0310-9956-ffa450edef68

src/testcases/org/apache/poi/hssf/data/15375.xls [new file with mode: 0644]
src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java

diff --git a/src/testcases/org/apache/poi/hssf/data/15375.xls b/src/testcases/org/apache/poi/hssf/data/15375.xls
new file mode 100644 (file)
index 0000000..99ab193
Binary files /dev/null and b/src/testcases/org/apache/poi/hssf/data/15375.xls differ
index ba4d05bc3a1082025b4e7edbbc21918b13d89da1..d49cf64f7959b8512a5aed0139d376b387eed8ae 100644 (file)
@@ -74,6 +74,8 @@ extends TestCase {
         super(s);
     }
     
+    /** Test reading AND writing a complicated workbook
+     *Test opening resulting sheet in excel*/
           public void test15228()
         throws java.io.IOException
     {
@@ -91,7 +93,8 @@ extends TestCase {
           assertTrue("File Should Exist", file.exists());
             
     }
-       public void test13796()
+          
+                 public void test13796()
         throws java.io.IOException
     {
          String readFilename = System.getProperty("HSSF.testdata.path");
@@ -104,26 +107,25 @@ extends TestCase {
           File file = File.createTempFile("test13796",".xls");
           FileOutputStream out    = new FileOutputStream(file);
           wb.write(out);
-          assertTrue("No exception thrown", true);
+          assertTrue("No exception thrown", true); 
           assertTrue("File Should Exist", file.exists());
-
+            
     }
-   
-    
-
-                 public void test23094() throws Exception {
-                     File file = File.createTempFile("test23094",".xls");
-        FileOutputStream out    = new FileOutputStream(file);
-        HSSFWorkbook     wb     = new HSSFWorkbook();
-        HSSFSheet        s      = wb.createSheet();
-        HSSFRow r = s.createRow(0);
-        r.createCell((short)0).setCellFormula("HYPERLINK( \"http://jakarta.apache.org\", \"Jakarta\" )");
-                 assertTrue("No Exception expected",true);
-                 wb.write(out);
-                 out.close();
-                 }
-
-  /* test hyperlinks
+     /**Test writing a hyperlink
+      * Open resulting sheet in Excel and check that A1 contains a hyperlink*/            
+     public void test23094() throws Exception {
+         File file = File.createTempFile("test23094",".xls");
+         FileOutputStream out    = new FileOutputStream(file);
+         HSSFWorkbook     wb     = new HSSFWorkbook();
+         HSSFSheet        s      = wb.createSheet();
+         HSSFRow r = s.createRow(0);
+         r.createCell((short)0).setCellFormula("HYPERLINK( \"http://jakarta.apache.org\", \"Jakarta\" )");
+         assertTrue("No Exception expected",true);
+         wb.write(out);
+         out.close();
+     }
+      
+     /* test hyperlinks
       * open resulting file in excel, and check that there is a link to Google
       **/
       public void test15353() throws Exception {
@@ -140,7 +142,7 @@ extends TestCase {
             wb.write(fileOut);
             fileOut.close();
         }
-        
+          
        /** test reading of a formula with a name and a cell ref in one
         **/
        public void test14460() throws Exception {
@@ -150,7 +152,8 @@ extends TestCase {
             HSSFWorkbook wb = new HSSFWorkbook(in);
             HSSFSheet sheet = wb.getSheetAt(0);
             assertTrue("No exception throws", true);
-     }      
+     }
+       
        public void test14330() throws Exception {
            String filedir = System.getProperty("HSSF.testdata.path");
            String filename=filedir+"/14330-1.xls";
@@ -163,5 +166,128 @@ extends TestCase {
            wb = new HSSFWorkbook(in);
            sheet = wb.getSheetAt(0);
            assertTrue("No exception throws", true);
-       }    
+       }
+    
+       /** test rewriting a file with large number of unique strings
+        *open resulting file in Excel to check results!*/
+       public void test15375() {
+           
+           try {
+               String filename = System.getProperty("HSSF.testdata.path");
+               filename=filename+"/15375.xls";
+               FileInputStream in = new FileInputStream(filename);
+               HSSFWorkbook wb = new HSSFWorkbook(in);
+               HSSFSheet sheet = wb.getSheetAt(0);
+               
+               HSSFRow row = sheet.getRow(5);
+               HSSFCell cell = row.getCell((short)3);
+               if (cell == null)
+                   cell = row.createCell((short)3);
+               
+               // Write test
+               cell.setCellType(HSSFCell.CELL_TYPE_STRING);
+               cell.setCellValue("a test");
+               
+               // change existing numeric cell value
+               
+               HSSFRow oRow = sheet.getRow(14);
+               HSSFCell oCell = oRow.getCell((short)4);
+               oCell.setCellValue(75);
+               oCell = oRow.getCell((short)5);
+               oCell.setCellValue("0.3");
+               
+               // Write the output to a file
+               File f = File.createTempFile("test15375",".xls");
+               FileOutputStream fileOut = new FileOutputStream(f);
+               wb.write(fileOut);
+               fileOut.close();
+           }
+           catch (java.io.FileNotFoundException ex) {
+               ex.printStackTrace();
+           }
+           catch (java.io.IOException ex) {
+               ex.printStackTrace();
+           }
+           
+       }
+       
+       /** test writing a file with large number of unique strings
+        *open resulting file in Excel to check results!*/
+       
+       public void test15375_2() throws Exception{
+           
+           
+           HSSFWorkbook wb = new HSSFWorkbook();
+           HSSFSheet sheet = wb.createSheet();
+           
+           String tmp1 = null;
+           String tmp2 = null;
+           String tmp3 = null;
+           
+           for (int i = 0; i < 6000; i++) {
+               tmp1 = "Test1" + i;
+               tmp2 = "Test2" + i;
+               tmp3 = "Test3" + i;
+               
+               HSSFRow row = sheet.createRow((short)i);
+               
+               HSSFCell cell = row.createCell((short)0);
+               cell.setCellValue(tmp1);
+               cell = row.createCell((short)1);
+               cell.setCellValue(tmp2);
+               cell = row.createCell((short)2);
+               cell.setCellValue(tmp3);
+           }
+           File f = File.createTempFile("test15375-2",".xls");
+           FileOutputStream fileOut = new FileOutputStream(f);
+           wb.write(fileOut);
+           fileOut.close();
+       }
+       /** another test for the number of unique strings issue
+        *test opening the resulting file in Excel*/
+       public void test22568() {
+           int r=2000;int c=3;
+           
+           HSSFWorkbook wb = new HSSFWorkbook() ;
+           HSSFSheet sheet = wb.createSheet("ExcelTest") ;
+           
+           int col_cnt=0, rw_cnt=0 ;
+           
+           col_cnt = c;
+           rw_cnt = r;
+           
+           HSSFRow rw = null ;
+           HSSFCell cell =null;
+           rw = sheet.createRow((short)0) ;
+           //Header row
+           for(short j=0; j<col_cnt; j++){
+               cell = rw.createCell((short)j) ;
+               cell.setCellValue("Col " + (j+1)) ;
+           }
+           
+           for(int i=1; i<rw_cnt; i++){
+               rw = sheet.createRow((short)i) ;
+               for(short j=0; j<col_cnt; j++){
+                   cell = rw.createCell((short)j) ;
+                   cell.setCellValue("Row:" + (i+1) + ",Column:" +
+                   (j+1)) ;
+               }
+           }
+           
+           sheet.setDefaultColumnWidth((short) 18) ;
+           
+           try {
+               File f = File.createTempFile("test22568",".xls");
+               FileOutputStream out = new FileOutputStream(f) ;
+               wb.write(out) ;
+               
+               out.close() ;
+           }
+           catch(java.io.IOException io_Excp) {
+               System.out.println(io_Excp.getMessage()) ;
+           }
+       }
 }
+    
+
+