Testcase for 24215

git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/branches/REL_2_BRANCH@353422 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Avik Sengupta 2003-10-30 16:23:42 +00:00
parent a26c21dbcc
commit 2de64d96e5
2 changed files with 235 additions and 216 deletions

Binary file not shown.

View File

@ -78,221 +78,219 @@ extends TestCase {
/** Test reading AND writing a complicated workbook /** Test reading AND writing a complicated workbook
*Test opening resulting sheet in excel*/ *Test opening resulting sheet in excel*/
public void test15228() public void test15228()
throws java.io.IOException throws java.io.IOException {
{ String readFilename = System.getProperty("HSSF.testdata.path");
String readFilename = System.getProperty("HSSF.testdata.path"); FileInputStream in = new FileInputStream(readFilename+File.separator+"15228.xls");
FileInputStream in = new FileInputStream(readFilename+File.separator+"15228.xls"); HSSFWorkbook wb = new HSSFWorkbook(in);
HSSFWorkbook wb = new HSSFWorkbook(in); HSSFSheet s = wb.getSheetAt(0);
HSSFSheet s = wb.getSheetAt(0); HSSFRow r = s.createRow(0);
HSSFRow r = s.createRow(0); HSSFCell c = r.createCell((short)0);
HSSFCell c = r.createCell((short)0); c.setCellValue(10);
c.setCellValue(10); File file = File.createTempFile("test15228",".xls");
File file = File.createTempFile("test15228",".xls"); FileOutputStream out = new FileOutputStream(file);
FileOutputStream out = new FileOutputStream(file); wb.write(out);
wb.write(out); assertTrue("No exception thrown", true);
assertTrue("No exception thrown", true); assertTrue("File Should Exist", file.exists());
assertTrue("File Should Exist", file.exists());
} }
public void test13796() public void test13796()
throws java.io.IOException throws java.io.IOException {
{ String readFilename = System.getProperty("HSSF.testdata.path");
String readFilename = System.getProperty("HSSF.testdata.path"); FileInputStream in = new FileInputStream(readFilename+File.separator+"13796.xls");
FileInputStream in = new FileInputStream(readFilename+File.separator+"13796.xls"); HSSFWorkbook wb = new HSSFWorkbook(in);
HSSFWorkbook wb = new HSSFWorkbook(in); HSSFSheet s = wb.getSheetAt(0);
HSSFSheet s = wb.getSheetAt(0); HSSFRow r = s.createRow(0);
HSSFRow r = s.createRow(0); HSSFCell c = r.createCell((short)0);
HSSFCell c = r.createCell((short)0); c.setCellValue(10);
c.setCellValue(10); File file = File.createTempFile("test13796",".xls");
File file = File.createTempFile("test13796",".xls"); FileOutputStream out = new FileOutputStream(file);
FileOutputStream out = new FileOutputStream(file); wb.write(out);
wb.write(out); assertTrue("No exception thrown", true);
assertTrue("No exception thrown", true); assertTrue("File Should Exist", file.exists());
assertTrue("File Should Exist", file.exists());
} }
/**Test writing a hyperlink /**Test writing a hyperlink
* Open resulting sheet in Excel and check that A1 contains a hyperlink*/ * Open resulting sheet in Excel and check that A1 contains a hyperlink*/
public void test23094() throws Exception { public void test23094() throws Exception {
File file = File.createTempFile("test23094",".xls"); File file = File.createTempFile("test23094",".xls");
FileOutputStream out = new FileOutputStream(file); FileOutputStream out = new FileOutputStream(file);
HSSFWorkbook wb = new HSSFWorkbook(); HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet s = wb.createSheet(); HSSFSheet s = wb.createSheet();
HSSFRow r = s.createRow(0); HSSFRow r = s.createRow(0);
r.createCell((short)0).setCellFormula("HYPERLINK( \"http://jakarta.apache.org\", \"Jakarta\" )"); r.createCell((short)0).setCellFormula("HYPERLINK( \"http://jakarta.apache.org\", \"Jakarta\" )");
assertTrue("No Exception expected",true); assertTrue("No Exception expected",true);
wb.write(out); wb.write(out);
out.close(); out.close();
} }
/* test hyperlinks /* test hyperlinks
* open resulting file in excel, and check that there is a link to Google * open resulting file in excel, and check that there is a link to Google
**/ **/
public void test15353() throws Exception { public void test15353() throws Exception {
HSSFWorkbook wb = new HSSFWorkbook(); HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet("My sheet"); HSSFSheet sheet = wb.createSheet("My sheet");
HSSFRow row = sheet.createRow( (short) 0 );
HSSFCell cell = row.createCell( (short) 0 );
cell.setCellFormula("HYPERLINK(\"http://google.com\",\"Google\")");
// Write out the workbook
File f = File.createTempFile("test15353",".xls");
FileOutputStream fileOut = new FileOutputStream(f);
wb.write(fileOut);
fileOut.close();
}
/** test reading of a formula with a name and a cell ref in one
**/
public void test14460() throws Exception {
String filename = System.getProperty("HSSF.testdata.path");
filename=filename+"/14460.xls";
FileInputStream in = new FileInputStream(filename);
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";
FileInputStream in = new FileInputStream(filename);
HSSFWorkbook wb = new HSSFWorkbook(in);
HSSFSheet sheet = wb.getSheetAt(0);
filename=filedir+"/14330-2.xls";
in = new FileInputStream(filename);
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.createRow( (short) 0 ); HSSFRow row = sheet.getRow(5);
HSSFCell cell = row.createCell( (short) 0 ); HSSFCell cell = row.getCell((short)3);
cell.setCellFormula("HYPERLINK(\"http://google.com\",\"Google\")"); if (cell == null)
cell = row.createCell((short)3);
// Write out the workbook // Write test
File f = File.createTempFile("test15353",".xls"); 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); FileOutputStream fileOut = new FileOutputStream(f);
wb.write(fileOut); wb.write(fileOut);
fileOut.close(); fileOut.close();
} }
catch (java.io.FileNotFoundException ex) {
/** test reading of a formula with a name and a cell ref in one ex.printStackTrace();
**/ }
public void test14460() throws Exception { catch (java.io.IOException ex) {
String filename = System.getProperty("HSSF.testdata.path"); ex.printStackTrace();
filename=filename+"/14460.xls"; }
FileInputStream in = new FileInputStream(filename);
HSSFWorkbook wb = new HSSFWorkbook(in); }
HSSFSheet sheet = wb.getSheetAt(0);
assertTrue("No exception throws", true); /** test writing a file with large number of unique strings
} *open resulting file in Excel to check results!*/
public void test14330() throws Exception { public void test15375_2() throws Exception{
String filedir = System.getProperty("HSSF.testdata.path");
String filename=filedir+"/14330-1.xls";
FileInputStream in = new FileInputStream(filename); HSSFWorkbook wb = new HSSFWorkbook();
HSSFWorkbook wb = new HSSFWorkbook(in); HSSFSheet sheet = wb.createSheet();
HSSFSheet sheet = wb.getSheetAt(0);
String tmp1 = null;
filename=filedir+"/14330-2.xls"; String tmp2 = null;
in = new FileInputStream(filename); String tmp3 = null;
wb = new HSSFWorkbook(in);
sheet = wb.getSheetAt(0); for (int i = 0; i < 6000; i++) {
assertTrue("No exception throws", true); 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()) ;
}
}
/** 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()) ;
}
}
/**Double byte strings*/ /**Double byte strings*/
public void test15556() throws java.io.IOException { public void test15556() throws java.io.IOException {
String filename = System.getProperty("HSSF.testdata.path"); String filename = System.getProperty("HSSF.testdata.path");
filename=filename+"/15556.xls"; filename=filename+"/15556.xls";
FileInputStream in = new FileInputStream(filename); FileInputStream in = new FileInputStream(filename);
@ -300,8 +298,8 @@ extends TestCase {
HSSFSheet sheet = wb.getSheetAt(0); HSSFSheet sheet = wb.getSheetAt(0);
HSSFRow row = sheet.getRow(45); HSSFRow row = sheet.getRow(45);
this.assertTrue("Read row fine!" , true); this.assertTrue("Read row fine!" , true);
} }
/*Double byte strings */ /*Double byte strings */
public void test22742() throws java.io.IOException { public void test22742() throws java.io.IOException {
@ -309,29 +307,29 @@ extends TestCase {
filename=filename+"/22742.xls"; filename=filename+"/22742.xls";
FileInputStream in = new FileInputStream(filename); FileInputStream in = new FileInputStream(filename);
HSSFWorkbook wb = new HSSFWorkbook(in); this.assertTrue("Read workbook!" , true); HSSFWorkbook wb = new HSSFWorkbook(in); this.assertTrue("Read workbook!" , true);
} }
/*Double byte strings */ /*Double byte strings */
public void test12561_1() throws java.io.IOException { public void test12561_1() throws java.io.IOException {
String filename = System.getProperty("HSSF.testdata.path"); String filename = System.getProperty("HSSF.testdata.path");
filename=filename+"/12561-1.xls"; filename=filename+"/12561-1.xls";
FileInputStream in = new FileInputStream(filename); FileInputStream in = new FileInputStream(filename);
HSSFWorkbook wb = new HSSFWorkbook(in); HSSFWorkbook wb = new HSSFWorkbook(in);
this.assertTrue("Read workbook!" , true); this.assertTrue("Read workbook!" , true);
} }
/*Double byte strings */ /*Double byte strings */
public void test12561_2() throws java.io.IOException { public void test12561_2() throws java.io.IOException {
String filename = System.getProperty("HSSF.testdata.path"); String filename = System.getProperty("HSSF.testdata.path");
filename=filename+"/12561-2.xls"; filename=filename+"/12561-2.xls";
FileInputStream in = new FileInputStream(filename); FileInputStream in = new FileInputStream(filename);
HSSFWorkbook wb = new HSSFWorkbook(in); HSSFWorkbook wb = new HSSFWorkbook(in);
this.assertTrue("Read workbook!" , true); this.assertTrue("Read workbook!" , true);
} }
/*Double byte strings /*Double byte strings
File supplied by jubeson*/ File supplied by jubeson*/
public void test12843_1() throws java.io.IOException { public void test12843_1() throws java.io.IOException {
String filename = System.getProperty("HSSF.testdata.path"); String filename = System.getProperty("HSSF.testdata.path");
@ -341,7 +339,7 @@ extends TestCase {
this.assertTrue("Read workbook!" , true); this.assertTrue("Read workbook!" , true);
} }
/*Double byte strings /*Double byte strings
File supplied by Paul Chung*/ File supplied by Paul Chung*/
public void test12843_2() throws java.io.IOException { public void test12843_2() throws java.io.IOException {
String filename = System.getProperty("HSSF.testdata.path"); String filename = System.getProperty("HSSF.testdata.path");
@ -358,19 +356,40 @@ extends TestCase {
FileInputStream in = new FileInputStream(filename); FileInputStream in = new FileInputStream(filename);
HSSFWorkbook wb = new HSSFWorkbook(in); HSSFWorkbook wb = new HSSFWorkbook(in);
this.assertTrue("Read workbook!" , true); this.assertTrue("Read workbook!" , true);
} }
/** Illegal argument exception - cannot store duplicate value in Map*/ /** Illegal argument exception - cannot store duplicate value in Map*/
public void test19599() throws java.io.IOException { public void test19599() throws java.io.IOException {
FileInputStream in = new FileInputStream("19599-1.xls"); String filename = System.getProperty("HSSF.testdata.path");
FileInputStream in = new FileInputStream(filename+"/19599-1.xls");
HSSFWorkbook wb = new HSSFWorkbook(in); HSSFWorkbook wb = new HSSFWorkbook(in);
in = new FileInputStream("19599-2.xls"); in = new FileInputStream(filename+"/19599-2.xls");
wb = new HSSFWorkbook(in); wb = new HSSFWorkbook(in);
this.assertTrue("Read workbook, No exceptions" , true); this.assertTrue("Read workbook, No exceptions" , true);
}
public void test24215() throws Exception {
String filename = System.getProperty("HSSF.testdata.path");
HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(filename+"/24215.xls"));
for (int sheetIndex = 0; sheetIndex < wb.getNumberOfSheets();sheetIndex++) {
HSSFSheet sheet = wb.getSheetAt(sheetIndex);
int rows = sheet.getLastRowNum();
for (int rowIndex = 0; rowIndex < rows; rowIndex++) {
HSSFRow row = sheet.getRow(rowIndex);
int cells = row.getLastCellNum();
for (short cellIndex = 0; cellIndex < cells; cellIndex++) {
HSSFCell cell = row.getCell(cellIndex);
}
}
}
assertTrue("No Exceptions while reading file", true);
} }
} }