You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ki...@apache.org on 2016/03/21 01:14:22 UTC
svn commit: r1735912 [3/3] - in /poi/trunk/src:
examples/src/org/apache/poi/hpsf/examples/
examples/src/org/apache/poi/ss/examples/
examples/src/org/apache/poi/xssf/usermodel/examples/
integrationtest/org/apache/poi/stress/ java/org/apache/poi/hssf/dev...
Modified: poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingShapes.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingShapes.java?rev=1735912&r1=1735911&r2=1735912&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingShapes.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingShapes.java Mon Mar 21 00:14:21 2016
@@ -17,11 +17,15 @@
package org.apache.poi.hssf.model;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertSame;
+import static org.junit.Assert.assertTrue;
+
import java.io.IOException;
import java.util.List;
-import junit.framework.TestCase;
-
import org.apache.poi.ddf.EscherBoolProperty;
import org.apache.poi.ddf.EscherContainerRecord;
import org.apache.poi.ddf.EscherDgRecord;
@@ -34,21 +38,33 @@ import org.apache.poi.hssf.HSSFTestDataS
import org.apache.poi.hssf.record.CommonObjectDataSubRecord;
import org.apache.poi.hssf.record.EscherAggregate;
import org.apache.poi.hssf.record.ObjRecord;
-import org.apache.poi.hssf.usermodel.*;
+import org.apache.poi.hssf.usermodel.HSSFAnchor;
+import org.apache.poi.hssf.usermodel.HSSFChildAnchor;
+import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
+import org.apache.poi.hssf.usermodel.HSSFComment;
+import org.apache.poi.hssf.usermodel.HSSFPatriarch;
+import org.apache.poi.hssf.usermodel.HSSFPicture;
+import org.apache.poi.hssf.usermodel.HSSFPolygon;
+import org.apache.poi.hssf.usermodel.HSSFRichTextString;
+import org.apache.poi.hssf.usermodel.HSSFShape;
+import org.apache.poi.hssf.usermodel.HSSFShapeGroup;
+import org.apache.poi.hssf.usermodel.HSSFSheet;
+import org.apache.poi.hssf.usermodel.HSSFSimpleShape;
+import org.apache.poi.hssf.usermodel.HSSFTestHelper;
+import org.apache.poi.hssf.usermodel.HSSFTextbox;
+import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.util.HexDump;
+import org.junit.Test;
/**
- * @author Evgeniy Berlog
- * date: 12.06.12
+ * Test escher drawing
+ *
+ * optionally the system setting "poi.deserialize.escher" can be set to {@code true}
*/
-public class TestDrawingShapes extends TestCase {
- static {
- //System.setProperty("poi.deserialize.escher", "true");
- }
-
+public class TestDrawingShapes {
/**
* HSSFShape tree bust be built correctly
* Check file with such records structure:
@@ -63,7 +79,8 @@ public class TestDrawingShapes extends T
* ----shape
* ----shape
*/
- public void testDrawingGroups() {
+ @Test
+ public void testDrawingGroups() throws IOException {
HSSFWorkbook wb = HSSFTestDataSamples.openSampleWorkbook("drawings.xls");
HSSFSheet sheet = wb.getSheet("groups");
HSSFPatriarch patriarch = sheet.getDrawingPatriarch();
@@ -74,8 +91,10 @@ public class TestDrawingShapes extends T
assertEquals(2, group1.getChildren().size());
group1 = (HSSFShapeGroup) group.getChildren().get(2);
assertEquals(2, group1.getChildren().size());
+ wb.close();
}
+ @Test
public void testHSSFShapeCompatibility() {
HSSFSimpleShape shape = new HSSFSimpleShape(null, new HSSFClientAnchor());
shape.setShapeType(HSSFSimpleShape.OBJECT_TYPE_LINE);
@@ -91,35 +110,33 @@ public class TestDrawingShapes extends T
spContainer.getChildById(EscherOptRecord.RECORD_ID);
assertEquals(7, opt.getEscherProperties().size());
- assertEquals(true,
- ((EscherBoolProperty) opt.lookup(EscherProperties.TEXT__SIZE_TEXT_TO_FIT_SHAPE)).isTrue());
+ assertTrue(((EscherBoolProperty) opt.lookup(EscherProperties.TEXT__SIZE_TEXT_TO_FIT_SHAPE)).isTrue());
assertEquals(0x00000004,
((EscherSimpleProperty) opt.lookup(EscherProperties.GEOMETRY__SHAPEPATH)).getPropertyValue());
assertEquals(0x08000009,
((EscherSimpleProperty) opt.lookup(EscherProperties.FILL__FILLCOLOR)).getPropertyValue());
- assertEquals(true,
- ((EscherBoolProperty) opt.lookup(EscherProperties.FILL__NOFILLHITTEST)).isTrue());
+ assertTrue(((EscherBoolProperty) opt.lookup(EscherProperties.FILL__NOFILLHITTEST)).isTrue());
assertEquals(0x08000040,
((EscherSimpleProperty) opt.lookup(EscherProperties.LINESTYLE__COLOR)).getPropertyValue());
- assertEquals(true,
- ((EscherBoolProperty) opt.lookup(EscherProperties.LINESTYLE__NOLINEDRAWDASH)).isTrue());
- assertEquals(true,
- ((EscherBoolProperty) opt.lookup(EscherProperties.GROUPSHAPE__PRINT)).isTrue());
+ assertTrue(((EscherBoolProperty) opt.lookup(EscherProperties.LINESTYLE__NOLINEDRAWDASH)).isTrue());
+ assertTrue(((EscherBoolProperty) opt.lookup(EscherProperties.GROUPSHAPE__PRINT)).isTrue());
}
+ @Test
public void testDefaultPictureSettings() {
HSSFPicture picture = new HSSFPicture(null, new HSSFClientAnchor());
assertEquals(picture.getLineWidth(), HSSFShape.LINEWIDTH_DEFAULT);
assertEquals(picture.getFillColor(), HSSFShape.FILL__FILLCOLOR_DEFAULT);
assertEquals(picture.getLineStyle(), HSSFShape.LINESTYLE_NONE);
assertEquals(picture.getLineStyleColor(), HSSFShape.LINESTYLE__COLOR_DEFAULT);
- assertEquals(picture.isNoFill(), false);
+ assertFalse(picture.isNoFill());
assertEquals(picture.getPictureIndex(), -1);//not set yet
}
/**
* No NullPointerException should appear
*/
+ @Test
public void testDefaultSettingsWithEmptyContainer() {
EscherContainerRecord container = new EscherContainerRecord();
EscherOptRecord opt = new EscherOptRecord();
@@ -142,10 +159,10 @@ public class TestDrawingShapes extends T
/**
* create a rectangle, save the workbook, read back and verify that all shape properties are there
*/
+ @Test
public void testReadWriteRectangle() throws IOException {
-
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet = wb.createSheet();
+ HSSFWorkbook wb1 = new HSSFWorkbook();
+ HSSFSheet sheet = wb1.createSheet();
HSSFPatriarch drawing = sheet.createDrawingPatriarch();
HSSFClientAnchor anchor = new HSSFClientAnchor(10, 10, 50, 50, (short) 2, 2, (short) 4, 4);
@@ -172,8 +189,9 @@ public class TestDrawingShapes extends T
assertEquals(rectangle.getWrapText(), HSSFSimpleShape.WRAP_NONE);
assertEquals(rectangle.getString().getString(), "teeeest");
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb2 = HSSFTestDataSamples.writeOutAndReadBack(wb1);
+ wb1.close();
+ sheet = wb2.getSheetAt(0);
drawing = sheet.getDrawingPatriarch();
assertEquals(1, drawing.getChildren().size());
@@ -202,8 +220,9 @@ public class TestDrawingShapes extends T
rectangle.setWrapText(HSSFSimpleShape.WRAP_BY_POINTS);
rectangle2.setString(new HSSFRichTextString("test22"));
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb3 = HSSFTestDataSamples.writeOutAndReadBack(wb2);
+ wb2.close();
+ sheet = wb3.getSheetAt(0);
drawing = sheet.getDrawingPatriarch();
assertEquals(1, drawing.getChildren().size());
rectangle2 = (HSSFSimpleShape) drawing.getChildren().get(0);
@@ -222,13 +241,16 @@ public class TestDrawingShapes extends T
HSSFSimpleShape rect3 = drawing.createSimpleShape(new HSSFClientAnchor());
rect3.setShapeType(HSSFSimpleShape.OBJECT_TYPE_RECTANGLE);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
+ HSSFWorkbook wb4 = HSSFTestDataSamples.writeOutAndReadBack(wb3);
+ wb3.close();
- drawing = wb.getSheetAt(0).getDrawingPatriarch();
+ drawing = wb4.getSheetAt(0).getDrawingPatriarch();
assertEquals(drawing.getChildren().size(), 2);
+ wb4.close();
}
- public void testReadExistingImage() {
+ @Test
+ public void testReadExistingImage() throws IOException {
HSSFWorkbook wb = HSSFTestDataSamples.openSampleWorkbook("drawings.xls");
HSSFSheet sheet = wb.getSheet("pictures");
HSSFPatriarch drawing = sheet.getDrawingPatriarch();
@@ -244,11 +266,13 @@ public class TestDrawingShapes extends T
picture.setPictureIndex(2);
assertEquals(picture.getPictureIndex(), 2);
+ wb.close();
}
/* assert shape properties when reading shapes from a existing workbook */
- public void testReadExistingRectangle() {
+ @Test
+ public void testReadExistingRectangle() throws IOException {
HSSFWorkbook wb = HSSFTestDataSamples.openSampleWorkbook("drawings.xls");
HSSFSheet sheet = wb.getSheet("rectangles");
HSSFPatriarch drawing = sheet.getDrawingPatriarch();
@@ -262,18 +286,21 @@ public class TestDrawingShapes extends T
assertEquals(shape.getLineWidth(), HSSFShape.LINEWIDTH_ONE_PT * 2);
assertEquals(shape.getString().getString(), "POItest");
assertEquals(shape.getRotationDegree(), 27);
+ wb.close();
}
- public void testShapeIds() {
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet1 = wb.createSheet();
+ @Test
+ public void testShapeIds() throws IOException {
+ HSSFWorkbook wb1 = new HSSFWorkbook();
+ HSSFSheet sheet1 = wb1.createSheet();
HSSFPatriarch patriarch1 = sheet1.createDrawingPatriarch();
for (int i = 0; i < 2; i++) {
patriarch1.createSimpleShape(new HSSFClientAnchor());
}
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet1 = wb.getSheetAt(0);
+ HSSFWorkbook wb2 = HSSFTestDataSamples.writeOutAndReadBack(wb1);
+ wb1.close();
+ sheet1 = wb2.getSheetAt(0);
patriarch1 = sheet1.getDrawingPatriarch();
EscherAggregate agg1 = HSSFTestHelper.getEscherAggregate(patriarch1);
@@ -299,13 +326,15 @@ public class TestDrawingShapes extends T
EscherSpRecord sp2 =
((EscherContainerRecord) spgrContainer.getChild(2)).getChildById(EscherSpRecord.RECORD_ID);
assertEquals(1026, sp2.getShapeId());
+ wb2.close();
}
/**
* Test get new id for shapes from existing file
* File already have for 1 shape on each sheet, because document must contain EscherDgRecord for each sheet
*/
- public void testAllocateNewIds() {
+ @Test
+ public void testAllocateNewIds() throws IOException {
HSSFWorkbook wb = HSSFTestDataSamples.openSampleWorkbook("empty.xls");
HSSFSheet sheet = wb.getSheetAt(0);
HSSFPatriarch patriarch = sheet.getDrawingPatriarch();
@@ -336,79 +365,76 @@ public class TestDrawingShapes extends T
assertEquals(HSSFTestHelper.allocateNewShapeId(patriarch), 1026);
assertEquals(HSSFTestHelper.allocateNewShapeId(patriarch), 1027);
assertEquals(HSSFTestHelper.allocateNewShapeId(patriarch), 1028);
+ wb.close();
}
- public void testOpt() throws Exception {
+ @Test
+ public void testOpt() throws IOException {
HSSFWorkbook wb = new HSSFWorkbook();
- try {
- // create a sheet with a text box
- HSSFSheet sheet = wb.createSheet();
- HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
-
- HSSFTextbox textbox = patriarch.createTextbox(new HSSFClientAnchor());
- EscherOptRecord opt1 = HSSFTestHelper.getOptRecord(textbox);
- EscherOptRecord opt2 = HSSFTestHelper.getEscherContainer(textbox).getChildById(EscherOptRecord.RECORD_ID);
- assertSame(opt1, opt2);
- } finally {
- wb.close();
- }
+ // create a sheet with a text box
+ HSSFSheet sheet = wb.createSheet();
+ HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
+
+ HSSFTextbox textbox = patriarch.createTextbox(new HSSFClientAnchor());
+ EscherOptRecord opt1 = HSSFTestHelper.getOptRecord(textbox);
+ EscherOptRecord opt2 = HSSFTestHelper.getEscherContainer(textbox).getChildById(EscherOptRecord.RECORD_ID);
+ assertSame(opt1, opt2);
+ wb.close();
}
+ @Test
public void testCorrectOrderInOptRecord() throws IOException{
HSSFWorkbook wb = new HSSFWorkbook();
- try {
- HSSFSheet sheet = wb.createSheet();
- HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
-
- HSSFTextbox textbox = patriarch.createTextbox(new HSSFClientAnchor());
- EscherOptRecord opt = HSSFTestHelper.getOptRecord(textbox);
-
- String opt1Str = opt.toXml();
-
- textbox.setFillColor(textbox.getFillColor());
- EscherContainerRecord container = HSSFTestHelper.getEscherContainer(textbox);
- EscherOptRecord optRecord = container.getChildById(EscherOptRecord.RECORD_ID);
- assertEquals(opt1Str, optRecord.toXml());
- textbox.setLineStyle(textbox.getLineStyle());
- assertEquals(opt1Str, optRecord.toXml());
- textbox.setLineWidth(textbox.getLineWidth());
- assertEquals(opt1Str, optRecord.toXml());
- textbox.setLineStyleColor(textbox.getLineStyleColor());
- assertEquals(opt1Str, optRecord.toXml());
- } finally {
- wb.close();
- }
- }
+ HSSFSheet sheet = wb.createSheet();
+ HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
- public void testDgRecordNumShapes() throws IOException{
- HSSFWorkbook wb = new HSSFWorkbook();
- try {
- HSSFSheet sheet = wb.createSheet();
- HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
-
- EscherAggregate aggregate = HSSFTestHelper.getEscherAggregate(patriarch);
- EscherDgRecord dgRecord = (EscherDgRecord) aggregate.getEscherRecord(0).getChild(0);
- assertEquals(dgRecord.getNumShapes(), 1);
- } finally {
- wb.close();
- }
+ HSSFTextbox textbox = patriarch.createTextbox(new HSSFClientAnchor());
+ EscherOptRecord opt = HSSFTestHelper.getOptRecord(textbox);
+
+ String opt1Str = opt.toXml();
+
+ textbox.setFillColor(textbox.getFillColor());
+ EscherContainerRecord container = HSSFTestHelper.getEscherContainer(textbox);
+ EscherOptRecord optRecord = container.getChildById(EscherOptRecord.RECORD_ID);
+ assertEquals(opt1Str, optRecord.toXml());
+ textbox.setLineStyle(textbox.getLineStyle());
+ assertEquals(opt1Str, optRecord.toXml());
+ textbox.setLineWidth(textbox.getLineWidth());
+ assertEquals(opt1Str, optRecord.toXml());
+ textbox.setLineStyleColor(textbox.getLineStyleColor());
+ assertEquals(opt1Str, optRecord.toXml());
+ wb.close();
}
- public void testTextForSimpleShape(){
+ @Test
+ public void testDgRecordNumShapes() throws IOException {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet();
HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
+ EscherAggregate aggregate = HSSFTestHelper.getEscherAggregate(patriarch);
+ EscherDgRecord dgRecord = (EscherDgRecord) aggregate.getEscherRecord(0).getChild(0);
+ assertEquals(dgRecord.getNumShapes(), 1);
+ wb.close();
+ }
+
+ @Test
+ public void testTextForSimpleShape() throws IOException {
+ HSSFWorkbook wb1 = new HSSFWorkbook();
+ HSSFSheet sheet = wb1.createSheet();
+ HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
+
HSSFSimpleShape shape = patriarch.createSimpleShape(new HSSFClientAnchor());
shape.setShapeType(HSSFSimpleShape.OBJECT_TYPE_RECTANGLE);
EscherAggregate agg = HSSFTestHelper.getEscherAggregate(patriarch);
assertEquals(agg.getShapeToObjMapping().size(), 2);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb2 = HSSFTestDataSamples.writeOutAndReadBack(wb1);
+ wb1.close();
+ sheet = wb2.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
shape = (HSSFSimpleShape) patriarch.getChildren().get(0);
@@ -422,10 +448,12 @@ public class TestDrawingShapes extends T
assertNotNull(HSSFTestHelper.getEscherContainer(shape).getChildById(EscherTextboxRecord.RECORD_ID));
assertEquals(agg.getShapeToObjMapping().size(), 2);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
+ HSSFWorkbook wb3 = HSSFTestDataSamples.writeOutAndReadBack(wb2);
+ wb2.close();
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb4 = HSSFTestDataSamples.writeOutAndReadBack(wb3);
+ wb3.close();
+ sheet = wb4.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
shape = (HSSFSimpleShape) patriarch.getChildren().get(0);
@@ -434,17 +462,19 @@ public class TestDrawingShapes extends T
assertEquals(shape.getString().getString(), "string1");
assertNotNull(HSSFTestHelper.getEscherContainer(shape).getChildById(EscherTextboxRecord.RECORD_ID));
assertEquals(agg.getShapeToObjMapping().size(), 2);
+ wb4.close();
}
- public void testRemoveShapes(){
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet = wb.createSheet();
+ @Test
+ public void testRemoveShapes() throws IOException {
+ HSSFWorkbook wb1 = new HSSFWorkbook();
+ HSSFSheet sheet = wb1.createSheet();
HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
HSSFSimpleShape rectangle = patriarch.createSimpleShape(new HSSFClientAnchor());
rectangle.setShapeType(HSSFSimpleShape.OBJECT_TYPE_RECTANGLE);
- int idx = wb.addPicture(new byte[]{1,2,3}, Workbook.PICTURE_TYPE_JPEG);
+ int idx = wb1.addPicture(new byte[]{1,2,3}, Workbook.PICTURE_TYPE_JPEG);
patriarch.createPicture(new HSSFClientAnchor(), idx);
patriarch.createCellComment(new HSSFClientAnchor());
@@ -464,8 +494,9 @@ public class TestDrawingShapes extends T
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getShapeToObjMapping().size(), 12);
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getTailRecords().size(), 1);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb2 = HSSFTestDataSamples.writeOutAndReadBack(wb1);
+ wb1.close();
+ sheet = wb2.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getShapeToObjMapping().size(), 12);
@@ -479,8 +510,9 @@ public class TestDrawingShapes extends T
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getShapeToObjMapping().size(), 10);
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getTailRecords().size(), 1);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb3 = HSSFTestDataSamples.writeOutAndReadBack(wb2);
+ wb2.close();
+ sheet = wb3.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getShapeToObjMapping().size(), 10);
@@ -492,8 +524,9 @@ public class TestDrawingShapes extends T
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getShapeToObjMapping().size(), 8);
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getTailRecords().size(), 1);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb4 = HSSFTestDataSamples.writeOutAndReadBack(wb3);
+ wb3.close();
+ sheet = wb4.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getShapeToObjMapping().size(), 8);
@@ -507,8 +540,9 @@ public class TestDrawingShapes extends T
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getTailRecords().size(), 1);
assertEquals(patriarch.getChildren().size(), 4);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb5 = HSSFTestDataSamples.writeOutAndReadBack(wb4);
+ wb4.close();
+ sheet = wb5.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getShapeToObjMapping().size(), 6);
@@ -522,8 +556,9 @@ public class TestDrawingShapes extends T
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getTailRecords().size(), 1);
assertEquals(patriarch.getChildren().size(), 3);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb6 = HSSFTestDataSamples.writeOutAndReadBack(wb5);
+ wb5.close();
+ sheet = wb6.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getShapeToObjMapping().size(), 5);
@@ -537,8 +572,9 @@ public class TestDrawingShapes extends T
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getTailRecords().size(), 0);
assertEquals(patriarch.getChildren().size(), 2);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb7 = HSSFTestDataSamples.writeOutAndReadBack(wb6);
+ wb6.close();
+ sheet = wb7.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getShapeToObjMapping().size(), 3);
@@ -552,8 +588,9 @@ public class TestDrawingShapes extends T
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getTailRecords().size(), 0);
assertEquals(patriarch.getChildren().size(), 1);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb8 = HSSFTestDataSamples.writeOutAndReadBack(wb7);
+ wb7.close();
+ sheet = wb8.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getShapeToObjMapping().size(), 2);
@@ -567,18 +604,21 @@ public class TestDrawingShapes extends T
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getTailRecords().size(), 0);
assertEquals(patriarch.getChildren().size(), 0);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb9 = HSSFTestDataSamples.writeOutAndReadBack(wb8);
+ wb8.close();
+ sheet = wb9.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getShapeToObjMapping().size(), 0);
assertEquals(HSSFTestHelper.getEscherAggregate(patriarch).getTailRecords().size(), 0);
assertEquals(patriarch.getChildren().size(), 0);
+ wb9.close();
}
- public void testShapeFlip(){
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet = wb.createSheet();
+ @Test
+ public void testShapeFlip() throws IOException {
+ HSSFWorkbook wb1 = new HSSFWorkbook();
+ HSSFSheet sheet = wb1.createSheet();
HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
HSSFSimpleShape rectangle = patriarch.createSimpleShape(new HSSFClientAnchor());
@@ -592,8 +632,9 @@ public class TestDrawingShapes extends T
rectangle.setFlipHorizontal(true);
assertEquals(rectangle.isFlipHorizontal(), true);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb2 = HSSFTestDataSamples.writeOutAndReadBack(wb1);
+ wb1.close();
+ sheet = wb2.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
rectangle = (HSSFSimpleShape) patriarch.getChildren().get(0);
@@ -606,19 +647,22 @@ public class TestDrawingShapes extends T
rectangle.setFlipVertical(false);
assertEquals(rectangle.isFlipVertical(), false);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb3 = HSSFTestDataSamples.writeOutAndReadBack(wb2);
+ wb2.close();
+ sheet = wb3.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
rectangle = (HSSFSimpleShape) patriarch.getChildren().get(0);
assertEquals(rectangle.isFlipVertical(), false);
assertEquals(rectangle.isFlipHorizontal(), false);
+ wb3.close();
}
- public void testRotation() {
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet = wb.createSheet();
+ @Test
+ public void testRotation() throws IOException {
+ HSSFWorkbook wb1 = new HSSFWorkbook();
+ HSSFSheet sheet = wb1.createSheet();
HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
HSSFSimpleShape rectangle = patriarch.createSimpleShape(new HSSFClientAnchor(0,0,100,100, (short) 0,0,(short)5,5));
@@ -629,8 +673,9 @@ public class TestDrawingShapes extends T
assertEquals(rectangle.getRotationDegree(), 45);
rectangle.setFlipHorizontal(true);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb2 = HSSFTestDataSamples.writeOutAndReadBack(wb1);
+ wb1.close();
+ sheet = wb2.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
rectangle = (HSSFSimpleShape) patriarch.getChildren().get(0);
assertEquals(rectangle.getRotationDegree(), 45);
@@ -639,32 +684,33 @@ public class TestDrawingShapes extends T
patriarch.setCoordinates(0, 0, 10, 10);
rectangle.setString(new HSSFRichTextString("1234"));
+ wb2.close();
}
- public void testShapeContainerImplementsIterable() throws IOException{
+ @SuppressWarnings("unused")
+ @Test
+ public void testShapeContainerImplementsIterable() throws IOException {
HSSFWorkbook wb = new HSSFWorkbook();
- try {
- HSSFSheet sheet = wb.createSheet();
- HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
-
- patriarch.createSimpleShape(new HSSFClientAnchor());
- patriarch.createSimpleShape(new HSSFClientAnchor());
-
- int i=2;
-
- for (HSSFShape shape: patriarch){
- i--;
- }
- assertEquals(i, 0);
- } finally {
- wb.close();
+ HSSFSheet sheet = wb.createSheet();
+ HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
+
+ patriarch.createSimpleShape(new HSSFClientAnchor());
+ patriarch.createSimpleShape(new HSSFClientAnchor());
+
+ int i=2;
+
+ for (HSSFShape shape: patriarch){
+ i--;
}
+ assertEquals(i, 0);
+ wb.close();
}
- public void testClearShapesForPatriarch(){
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet = wb.createSheet();
+ @Test
+ public void testClearShapesForPatriarch() throws IOException {
+ HSSFWorkbook wb1 = new HSSFWorkbook();
+ HSSFSheet sheet = wb1.createSheet();
HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
patriarch.createSimpleShape(new HSSFClientAnchor());
@@ -683,15 +729,18 @@ public class TestDrawingShapes extends T
assertEquals(agg.getTailRecords().size(), 0);
assertEquals(patriarch.getChildren().size(), 0);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
- sheet = wb.getSheetAt(0);
+ HSSFWorkbook wb2 = HSSFTestDataSamples.writeOutAndReadBack(wb1);
+ wb1.close();
+ sheet = wb2.getSheetAt(0);
patriarch = sheet.getDrawingPatriarch();
assertEquals(agg.getShapeToObjMapping().size(), 0);
assertEquals(agg.getTailRecords().size(), 0);
assertEquals(patriarch.getChildren().size(), 0);
+ wb2.close();
}
+ @Test
public void testBug45312() throws Exception {
HSSFWorkbook wb = new HSSFWorkbook();
try {
@@ -739,7 +788,7 @@ public class TestDrawingShapes extends T
}
}
- private void checkWorkbookBack(HSSFWorkbook wb) {
+ private void checkWorkbookBack(HSSFWorkbook wb) throws IOException {
HSSFWorkbook wbBack = HSSFTestDataSamples.writeOutAndReadBack(wb);
assertNotNull(wbBack);
@@ -806,5 +855,7 @@ public class TestDrawingShapes extends T
assertEquals(2, cAnchor.getCol2());
assertEquals(2, cAnchor.getRow1());
assertEquals(2, cAnchor.getRow2());
+
+ wbBack.close();
}
}
Modified: poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFCell.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFCell.java?rev=1735912&r1=1735911&r2=1735912&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFCell.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFCell.java Mon Mar 21 00:14:21 2016
@@ -62,7 +62,7 @@ public final class TestHSSFCell extends
* but there's a separate unit test for that.
*/
@Test
- public void testDateWindowingRead() throws Exception {
+ public void testDateWindowingRead() throws IOException {
Calendar cal = LocaleUtil.getLocaleCalendar(2000, 0, 1, 0, 0, 0);// Jan. 1, 2000
Date date = cal.getTime();
@@ -94,7 +94,7 @@ public final class TestHSSFCell extends
* results of this test are meaningless.
*/
@Test
- public void testDateWindowingWrite() throws Exception {
+ public void testDateWindowingWrite() throws IOException {
Calendar cal = LocaleUtil.getLocaleCalendar(2000,0,1,0,0,0); // Jan. 1, 2000
Date date = cal.getTime();
@@ -143,7 +143,7 @@ public final class TestHSSFCell extends
* Tests that the active cell can be correctly read and set
*/
@Test
- public void testActiveCell() throws Exception {
+ public void testActiveCell() throws IOException {
//read in sample
HSSFWorkbook wb1 = HSSFTestDataSamples.openSampleWorkbook("Simple.xls");
@@ -235,7 +235,7 @@ public final class TestHSSFCell extends
* Test reading hyperlinks
*/
@Test
- public void testWithHyperlink() throws Exception {
+ public void testWithHyperlink() throws IOException {
HSSFWorkbook wb = HSSFTestDataSamples.openSampleWorkbook("WithHyperlink.xls");
@@ -256,7 +256,7 @@ public final class TestHSSFCell extends
* Test reading hyperlinks
*/
@Test
- public void testWithTwoHyperlinks() throws Exception {
+ public void testWithTwoHyperlinks() throws IOException {
HSSFWorkbook wb = HSSFTestDataSamples.openSampleWorkbook("WithTwoHyperLinks.xls");
@@ -286,7 +286,7 @@ public final class TestHSSFCell extends
* to our workbook, and not those from other workbooks.
*/
@Test
- public void testCellStyleWorkbookMatch() throws Exception {
+ public void testCellStyleWorkbookMatch() throws IOException {
HSSFWorkbook wbA = new HSSFWorkbook();
HSSFWorkbook wbB = new HSSFWorkbook();
@@ -386,14 +386,14 @@ public final class TestHSSFCell extends
* HSSF prior to version 3.7 had a bug: it could write a NaN but could not read such a file back.
*/
@Test
- public void testReadNaN() throws Exception {
+ public void testReadNaN() throws IOException {
HSSFWorkbook wb = HSSFTestDataSamples.openSampleWorkbook("49761.xls");
assertNotNull(wb);
wb.close();
}
@Test
- public void testHSSFCell() throws Exception {
+ public void testHSSFCell() throws IOException {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet();
HSSFRow row = sheet.createRow(0);
@@ -403,9 +403,8 @@ public final class TestHSSFCell extends
wb.close();
}
- @SuppressWarnings("deprecation")
@Test
- public void testDeprecatedMethods() throws Exception {
+ public void testDeprecatedMethods() throws IOException {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet();
HSSFRow row = sheet.createRow(0);
Modified: poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFExternalFunctions.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFExternalFunctions.java?rev=1735912&r1=1735911&r2=1735912&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFExternalFunctions.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFExternalFunctions.java Mon Mar 21 00:14:21 2016
@@ -24,13 +24,7 @@ import org.apache.poi.ss.formula.BaseTes
* Tests setting and evaluating user-defined functions in HSSF
*/
public final class TestHSSFExternalFunctions extends BaseTestExternalFunctions {
-
public TestHSSFExternalFunctions() {
- super(HSSFITestDataProvider.instance);
+ super(HSSFITestDataProvider.instance, "atp.xls");
}
-
- public void testATP(){
- baseTestInvokeATP("atp.xls");
- }
-
}
Modified: poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestSheetHiding.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestSheetHiding.java?rev=1735912&r1=1735911&r2=1735912&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestSheetHiding.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestSheetHiding.java Mon Mar 21 00:14:21 2016
@@ -20,9 +20,6 @@ package org.apache.poi.hssf.usermodel;
import org.apache.poi.hssf.HSSFITestDataProvider;
import org.apache.poi.ss.usermodel.BaseTestSheetHiding;
-/**
- * @author Yegor Kozlov
- */
public final class TestSheetHiding extends BaseTestSheetHiding {
public TestSheetHiding() {
super(HSSFITestDataProvider.instance,
Modified: poi/trunk/src/testcases/org/apache/poi/ss/formula/BaseTestExternalFunctions.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ss/formula/BaseTestExternalFunctions.java?rev=1735912&r1=1735911&r2=1735912&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ss/formula/BaseTestExternalFunctions.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ss/formula/BaseTestExternalFunctions.java Mon Mar 21 00:14:21 2016
@@ -16,7 +16,10 @@
==================================================================== */
package org.apache.poi.ss.formula;
-import junit.framework.TestCase;
+import static org.junit.Assert.*;
+
+import java.io.IOException;
+
import org.apache.poi.ss.ITestDataProvider;
import org.apache.poi.ss.formula.eval.ErrorEval;
import org.apache.poi.ss.formula.eval.NotImplementedException;
@@ -30,13 +33,12 @@ import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.FormulaEvaluator;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
+import org.junit.Test;
/**
* Test setting / evaluating of Analysis Toolpack and user-defined functions
- *
- * @author Yegor Kozlov
*/
-public class BaseTestExternalFunctions extends TestCase {
+public class BaseTestExternalFunctions {
// define two custom user-defined functions
private static class MyFunc implements FreeRefFunction {
public MyFunc() {
@@ -75,34 +77,37 @@ public class BaseTestExternalFunctions e
);
- protected final ITestDataProvider _testDataProvider;
+ private final ITestDataProvider _testDataProvider;
+ private final String atpFile;
/**
* @param testDataProvider an object that provides test data in HSSF / XSSF specific way
*/
- protected BaseTestExternalFunctions(ITestDataProvider testDataProvider) {
+ protected BaseTestExternalFunctions(ITestDataProvider testDataProvider, String atpFile) {
_testDataProvider = testDataProvider;
+ this.atpFile = atpFile;
}
- public void testExternalFunctions() {
+ @Test
+ public void testExternalFunctions() throws IOException {
Workbook wb = _testDataProvider.createWorkbook();
FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator();
Sheet sh = wb.createSheet();
Cell cell1 = sh.createRow(0).createCell(0);
- cell1.setCellFormula("ISODD(1)+ISEVEN(2)"); // functions from the Excel Analysis Toolpack
+ // functions from the Excel Analysis Toolpack
+ cell1.setCellFormula("ISODD(1)+ISEVEN(2)");
assertEquals("ISODD(1)+ISEVEN(2)", cell1.getCellFormula());
Cell cell2 = sh.createRow(1).createCell(0);
- cell2.setCellFormula("MYFUNC(\"B1\")"); //unregistered functions are parseable and renderable, but may not be evaluateable
+ // unregistered functions are parseable and renderable, but may not be evaluateable
+ cell2.setCellFormula("MYFUNC(\"B1\")");
try {
evaluator.evaluate(cell2);
fail("Expected NotImplementedFunctionException/NotImplementedException");
} catch (final NotImplementedException e) {
- if (!(e.getCause() instanceof NotImplementedFunctionException))
- throw e;
- // expected
+ assertTrue(e.getCause() instanceof NotImplementedFunctionException);
// Alternatively, a future implementation of evaluate could return #NAME? error to align behavior with Excel
// assertEquals(ErrorEval.NAME_INVALID, ErrorEval.valueOf(evaluator.evaluate(cell2).getErrorValue()));
}
@@ -116,10 +121,11 @@ public class BaseTestExternalFunctions e
cell3.setCellFormula("MYFUNC2(\"C1\")&\"-\"&A2"); //where A2 is defined above
assertEquals("MYFUNC2(\"C1\")&\"-\"&A2", cell3.getCellFormula());
- assertEquals(2.0, evaluator.evaluate(cell1).getNumberValue());
+ assertEquals(2.0, evaluator.evaluate(cell1).getNumberValue(), 0);
assertEquals("B1abc", evaluator.evaluate(cell2).getStringValue());
assertEquals("C1abc2-B1abc", evaluator.evaluate(cell3).getStringValue());
+ wb.close();
}
/**
@@ -127,12 +133,13 @@ public class BaseTestExternalFunctions e
*
* @param testFile either atp.xls or atp.xlsx
*/
- public void baseTestInvokeATP(String testFile){
- Workbook wb = _testDataProvider.openSampleWorkbook(testFile);
+ @Test
+ public void baseTestInvokeATP() throws IOException {
+ Workbook wb = _testDataProvider.openSampleWorkbook(atpFile);
FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator();
Sheet sh = wb.getSheetAt(0);
- // these two are not imlemented in r
+ // these two are not implemented in r
assertEquals("DELTA(1.3,1.5)", sh.getRow(0).getCell(1).getCellFormula());
assertEquals("COMPLEX(2,4)", sh.getRow(1).getCell(1).getCellFormula());
@@ -146,6 +153,7 @@ public class BaseTestExternalFunctions e
assertEquals(true, evaluator.evaluate(cell3).getBooleanValue());
assertEquals(Cell.CELL_TYPE_BOOLEAN, evaluator.evaluateFormulaCell(cell3));
+ wb.close();
}
}
Modified: poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestCell.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestCell.java?rev=1735912&r1=1735911&r2=1735912&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestCell.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestCell.java Mon Mar 21 00:14:21 2016
@@ -17,6 +17,7 @@
package org.apache.poi.ss.usermodel;
+import static org.apache.poi.ss.usermodel.FormulaError.forInt;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
@@ -25,38 +26,22 @@ import static org.junit.Assert.assertTru
import static org.junit.Assert.fail;
import java.io.IOException;
-import java.util.ArrayList;
import java.util.Calendar;
-import java.util.List;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.ITestDataProvider;
import org.apache.poi.ss.SpreadsheetVersion;
import org.apache.poi.util.LocaleUtil;
-import org.junit.After;
import org.junit.Test;
-import junit.framework.AssertionFailedError;
-
/**
* Common superclass for testing implementations of
* {@link org.apache.poi.ss.usermodel.Cell}
*/
-@SuppressWarnings("deprecation")
public abstract class BaseTestCell {
protected final ITestDataProvider _testDataProvider;
- private List<Workbook> workbooksToClose = new ArrayList<Workbook>();
-
- @After
- public void tearDown() throws IOException {
- // free resources correctly
- for(Workbook wb : workbooksToClose) {
- wb.close();
- }
- }
-
/**
* @param testDataProvider an object that provides test data in HSSF / XSSF specific way
*/
@@ -307,7 +292,7 @@ public abstract class BaseTestCell {
r.createCell(0).setCellValue(true);
r.createCell(1).setCellValue(1.5);
r.createCell(2).setCellValue(factory.createRichTextString("Astring"));
- r.createCell(3).setCellErrorValue((byte)ErrorConstants.ERROR_DIV_0);
+ r.createCell(3).setCellErrorValue(FormulaError.DIV0.getCode());
r.createCell(4).setCellFormula("A1+B1");
assertEquals("Boolean", "TRUE", r.getCell(0).toString());
@@ -364,9 +349,7 @@ public abstract class BaseTestCell {
}
- private Cell createACell() {
- Workbook wb = _testDataProvider.createWorkbook();
- workbooksToClose.add(wb);
+ private Cell createACell(Workbook wb) {
return wb.createSheet("Sheet1").createRow(0).createCell(0);
}
@@ -410,17 +393,15 @@ public abstract class BaseTestCell {
}
@Test
- public void testChangeTypeStringToBool() {
- Cell cell = createACell();
+ public void testChangeTypeStringToBool() throws IOException {
+ Workbook wb = _testDataProvider.createWorkbook();
+
+ Cell cell = createACell(wb);
cell.setCellValue("TRUE");
assertEquals(Cell.CELL_TYPE_STRING, cell.getCellType());
- try {
- cell.setCellType(Cell.CELL_TYPE_BOOLEAN);
- } catch (ClassCastException e) {
- throw new AssertionFailedError(
- "Identified bug in conversion of cell from text to boolean");
- }
+ // test conversion of cell from text to boolean
+ cell.setCellType(Cell.CELL_TYPE_BOOLEAN);
assertEquals(Cell.CELL_TYPE_BOOLEAN, cell.getCellType());
assertEquals(true, cell.getBooleanCellValue());
@@ -434,52 +415,51 @@ public abstract class BaseTestCell {
assertEquals(false, cell.getBooleanCellValue());
cell.setCellType(Cell.CELL_TYPE_STRING);
assertEquals("FALSE", cell.getRichStringCellValue().getString());
+
+ wb.close();
}
@Test
- public void testChangeTypeBoolToString() {
- Cell cell = createACell();
+ public void testChangeTypeBoolToString() throws IOException {
+ Workbook wb = _testDataProvider.createWorkbook();
+
+ Cell cell = createACell(wb);
cell.setCellValue(true);
- try {
- cell.setCellType(Cell.CELL_TYPE_STRING);
- } catch (IllegalStateException e) {
- if (e.getMessage().equals("Cannot get a text value from a boolean cell")) {
- throw new AssertionFailedError(
- "Identified bug in conversion of cell from boolean to text");
- }
- throw e;
- }
+ // test conversion of cell from boolean to text
+ cell.setCellType(Cell.CELL_TYPE_STRING);
assertEquals("TRUE", cell.getRichStringCellValue().getString());
+
+ wb.close();
}
@Test
- public void testChangeTypeErrorToNumber() {
- Cell cell = createACell();
- cell.setCellErrorValue((byte)ErrorConstants.ERROR_NAME);
+ public void testChangeTypeErrorToNumber() throws IOException {
+ Workbook wb = _testDataProvider.createWorkbook();
+
+ Cell cell = createACell(wb);
+ cell.setCellErrorValue(FormulaError.NAME.getCode());
try {
cell.setCellValue(2.5);
} catch (ClassCastException e) {
- throw new AssertionFailedError("Identified bug 46479b");
+ fail("Identified bug 46479b");
}
assertEquals(2.5, cell.getNumericCellValue(), 0.0);
+
+ wb.close();
}
@Test
- public void testChangeTypeErrorToBoolean() {
- Cell cell = createACell();
- cell.setCellErrorValue((byte)ErrorConstants.ERROR_NAME);
- cell.setCellValue(true);
- try {
- cell.getBooleanCellValue();
- } catch (IllegalStateException e) {
- if (e.getMessage().equals("Cannot get a boolean value from a error cell")) {
+ public void testChangeTypeErrorToBoolean() throws IOException {
+ Workbook wb = _testDataProvider.createWorkbook();
- throw new AssertionFailedError("Identified bug 46479c");
- }
- throw e;
- }
+ Cell cell = createACell(wb);
+ cell.setCellErrorValue(FormulaError.NAME.getCode());
+ cell.setCellValue(true);
+ // Identify bug 46479c
assertEquals(true, cell.getBooleanCellValue());
+
+ wb.close();
}
/**
@@ -488,8 +468,10 @@ public abstract class BaseTestCell {
* string result type.
*/
@Test
- public void testConvertStringFormulaCell() {
- Cell cellA1 = createACell();
+ public void testConvertStringFormulaCell() throws IOException {
+ Workbook wb = _testDataProvider.createWorkbook();
+
+ Cell cellA1 = createACell(wb);
cellA1.setCellFormula("\"abc\"");
// default cached formula result is numeric zero
@@ -501,10 +483,10 @@ public abstract class BaseTestCell {
assertEquals("abc", cellA1.getStringCellValue());
fe.evaluateInCell(cellA1);
- if (cellA1.getStringCellValue().equals("")) {
- throw new AssertionFailedError("Identified bug with writing back formula result of type string");
- }
+ assertFalse("Identified bug with writing back formula result of type string", cellA1.getStringCellValue().equals(""));
assertEquals("abc", cellA1.getStringCellValue());
+
+ wb.close();
}
/**
@@ -512,8 +494,10 @@ public abstract class BaseTestCell {
* lower level that {#link {@link Cell#setCellType(int)} works properly
*/
@Test
- public void testSetTypeStringOnFormulaCell() {
- Cell cellA1 = createACell();
+ public void testSetTypeStringOnFormulaCell() throws IOException {
+ Workbook wb = _testDataProvider.createWorkbook();
+
+ Cell cellA1 = createACell(wb);
FormulaEvaluator fe = cellA1.getSheet().getWorkbook().getCreationHelper().createFormulaEvaluator();
cellA1.setCellFormula("\"DEF\"");
@@ -543,9 +527,11 @@ public abstract class BaseTestCell {
fe.clearAllCachedResultValues();
fe.evaluateFormulaCell(cellA1);
confirmCannotReadString(cellA1);
- assertEquals(ErrorConstants.ERROR_NAME, cellA1.getErrorCellValue());
+ assertEquals(FormulaError.NAME, forInt(cellA1.getErrorCellValue()));
cellA1.setCellType(Cell.CELL_TYPE_STRING);
assertEquals("#NAME?", cellA1.getStringCellValue());
+
+ wb.close();
}
private static void confirmCannotReadString(Cell cell) {
@@ -556,15 +542,17 @@ public abstract class BaseTestCell {
* Test for bug in convertCellValueToBoolean to make sure that formula results get converted
*/
@Test
- public void testChangeTypeFormulaToBoolean() {
- Cell cell = createACell();
+ public void testChangeTypeFormulaToBoolean() throws IOException {
+ Workbook wb = _testDataProvider.createWorkbook();
+
+ Cell cell = createACell(wb);
cell.setCellFormula("1=1");
cell.setCellValue(true);
cell.setCellType(Cell.CELL_TYPE_BOOLEAN);
- if (cell.getBooleanCellValue() == false) {
- throw new AssertionFailedError("Identified bug 46479d");
- }
+ assertTrue("Identified bug 46479d", cell.getBooleanCellValue());
assertEquals(true, cell.getBooleanCellValue());
+
+ wb.close();
}
/**
@@ -664,17 +652,17 @@ public abstract class BaseTestCell {
Cell cell0 = row.createCell(0);
cell0.setCellValue(Double.NaN);
assertEquals("Double.NaN should change cell type to CELL_TYPE_ERROR", Cell.CELL_TYPE_ERROR, cell0.getCellType());
- assertEquals("Double.NaN should change cell value to #NUM!", ErrorConstants.ERROR_NUM, cell0.getErrorCellValue());
+ assertEquals("Double.NaN should change cell value to #NUM!", FormulaError.NUM, forInt(cell0.getErrorCellValue()));
Cell cell1 = row.createCell(1);
cell1.setCellValue(Double.POSITIVE_INFINITY);
assertEquals("Double.POSITIVE_INFINITY should change cell type to CELL_TYPE_ERROR", Cell.CELL_TYPE_ERROR, cell1.getCellType());
- assertEquals("Double.POSITIVE_INFINITY should change cell value to #DIV/0!", ErrorConstants.ERROR_DIV_0, cell1.getErrorCellValue());
+ assertEquals("Double.POSITIVE_INFINITY should change cell value to #DIV/0!", FormulaError.DIV0, forInt(cell1.getErrorCellValue()));
Cell cell2 = row.createCell(2);
cell2.setCellValue(Double.NEGATIVE_INFINITY);
assertEquals("Double.NEGATIVE_INFINITY should change cell type to CELL_TYPE_ERROR", Cell.CELL_TYPE_ERROR, cell2.getCellType());
- assertEquals("Double.NEGATIVE_INFINITY should change cell value to #DIV/0!", ErrorConstants.ERROR_DIV_0, cell2.getErrorCellValue());
+ assertEquals("Double.NEGATIVE_INFINITY should change cell value to #DIV/0!", FormulaError.DIV0, forInt(cell2.getErrorCellValue()));
Workbook wb2 = _testDataProvider.writeOutAndReadBack(wb1);
wb1.close();
@@ -682,15 +670,15 @@ public abstract class BaseTestCell {
cell0 = row.getCell(0);
assertEquals(Cell.CELL_TYPE_ERROR, cell0.getCellType());
- assertEquals(ErrorConstants.ERROR_NUM, cell0.getErrorCellValue());
+ assertEquals(FormulaError.NUM, forInt(cell0.getErrorCellValue()));
cell1 = row.getCell(1);
assertEquals(Cell.CELL_TYPE_ERROR, cell1.getCellType());
- assertEquals(ErrorConstants.ERROR_DIV_0, cell1.getErrorCellValue());
+ assertEquals(FormulaError.DIV0, forInt(cell1.getErrorCellValue()));
cell2 = row.getCell(2);
assertEquals(Cell.CELL_TYPE_ERROR, cell2.getCellType());
- assertEquals(ErrorConstants.ERROR_DIV_0, cell2.getErrorCellValue());
+ assertEquals(FormulaError.DIV0, forInt(cell2.getErrorCellValue()));
wb2.close();
}
Modified: poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestNamedRange.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestNamedRange.java?rev=1735912&r1=1735911&r2=1735912&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestNamedRange.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestNamedRange.java Mon Mar 21 00:14:21 2016
@@ -24,13 +24,14 @@ import static org.junit.Assert.assertNul
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
+import java.io.IOException;
+import java.util.List;
+
import org.apache.poi.ss.ITestDataProvider;
import org.apache.poi.ss.util.AreaReference;
import org.apache.poi.ss.util.CellReference;
import org.junit.Test;
-import java.util.List;
-
/**
* Tests of implementations of {@link org.apache.poi.ss.usermodel.Name}.
*
@@ -647,7 +648,7 @@ public abstract class BaseTestNamedRange
}
@Test
- public void testBug56930() {
+ public void testBug56930() throws IOException {
Workbook wb = _testDataProvider.createWorkbook();
// x1 on sheet1 defines "x=1"
@@ -673,5 +674,7 @@ public abstract class BaseTestNamedRange
assertEquals("1", wb.getName("x").getRefersToFormula());
wb.removeName("x");
assertEquals("2", wb.getName("x").getRefersToFormula());
+
+ wb.close();
}
}
Modified: poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheet.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheet.java?rev=1735912&r1=1735911&r2=1735912&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheet.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheet.java Mon Mar 21 00:14:21 2016
@@ -17,9 +17,13 @@
package org.apache.poi.ss.usermodel;
-import static junit.framework.TestCase.assertNotNull;
-import static junit.framework.TestCase.assertTrue;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertSame;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
import java.io.IOException;
import java.util.Iterator;
@@ -266,11 +270,11 @@ public abstract class BaseTestSheet {
}
/**
- * Dissallow creating wholly or partially overlapping merged regions
+ * Disallow creating wholly or partially overlapping merged regions
* as this results in a corrupted workbook
*/
@Test
- public void addOverlappingMergedRegions() {
+ public void addOverlappingMergedRegions() throws IOException {
final Workbook wb = _testDataProvider.createWorkbook();
final Sheet sheet = wb.createSheet();
@@ -282,14 +286,14 @@ public abstract class BaseTestSheet {
sheet.addMergedRegion(duplicateRegion);
fail("Should not be able to add a merged region (" + duplicateRegion.formatAsString() + ") " +
"if sheet already contains the same merged region (" + baseRegion.formatAsString() + ")");
- } catch (final IllegalStateException e) { } //expected
+ } catch (final IllegalStateException e) { }
try {
final CellRangeAddress partiallyOverlappingRegion = new CellRangeAddress(1, 2, 1, 2); //B2:C3
sheet.addMergedRegion(partiallyOverlappingRegion);
fail("Should not be able to add a merged region (" + partiallyOverlappingRegion.formatAsString() + ") " +
"if it partially overlaps with an existing merged region (" + baseRegion.formatAsString() + ")");
- } catch (final IllegalStateException e) { } //expected
+ } catch (final IllegalStateException e) { }
try {
final CellRangeAddress subsetRegion = new CellRangeAddress(0, 1, 0, 0); //A1:A2
@@ -303,10 +307,12 @@ public abstract class BaseTestSheet {
sheet.addMergedRegion(supersetRegion);
fail("Should not be able to add a merged region (" + supersetRegion.formatAsString() + ") " +
"if it is a formal superset of an existing merged region (" + baseRegion.formatAsString() + ")");
- } catch (final IllegalStateException e) { } //expected
+ } catch (final IllegalStateException e) { }
final CellRangeAddress disjointRegion = new CellRangeAddress(10, 11, 10, 11);
- sheet.addMergedRegion(disjointRegion); //allowed
+ sheet.addMergedRegion(disjointRegion);
+
+ wb.close();
}
/*
Modified: poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetHiding.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetHiding.java?rev=1735912&r1=1735911&r2=1735912&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetHiding.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetHiding.java Mon Mar 21 00:14:21 2016
@@ -17,13 +17,19 @@
package org.apache.poi.ss.usermodel;
-import junit.framework.TestCase;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+import java.io.IOException;
import org.apache.poi.ss.ITestDataProvider;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
-/**
- */
-public abstract class BaseTestSheetHiding extends TestCase {
+public abstract class BaseTestSheetHiding {
protected final ITestDataProvider _testDataProvider;
protected Workbook wbH;
@@ -41,15 +47,22 @@ public abstract class BaseTestSheetHidin
_file2 = file2;
}
- protected void setUp() {
+ @Before
+ public void setUp() {
wbH = _testDataProvider.openSampleWorkbook(_file1);
wbU = _testDataProvider.openSampleWorkbook(_file2);
}
-
- public final void testSheetHidden() {
+ @After
+ public void teadDown() throws IOException {
+ wbH.close();
+ wbU.close();
+ }
+
+ @Test
+ public final void testSheetHidden() throws IOException {
Workbook wb = _testDataProvider.createWorkbook();
- Sheet sh = wb.createSheet("MySheet");
+ wb.createSheet("MySheet");
assertFalse(wb.isSheetHidden(0));
assertFalse(wb.isSheetVeryHidden(0));
@@ -78,6 +91,8 @@ public abstract class BaseTestSheetHidin
} catch (IllegalArgumentException e){
// ok
}
+
+ wb.close();
}
/**
@@ -85,6 +100,7 @@ public abstract class BaseTestSheetHidin
* with the right text on them, no matter what
* the hidden flags are
*/
+ @Test
public void testTextSheets() {
// Both should have two sheets
assertEquals(2, wbH.getNumberOfSheets());
@@ -113,6 +129,7 @@ public abstract class BaseTestSheetHidin
* Check that we can get and set the hidden flags
* as expected
*/
+ @Test
public void testHideUnHideFlags() {
assertTrue(wbH.isSheetHidden(0));
assertFalse(wbH.isSheetHidden(1));
@@ -124,25 +141,29 @@ public abstract class BaseTestSheetHidin
* Turn the sheet with none hidden into the one with
* one hidden
*/
- public void testHide() {
+ @Test
+ public void testHide() throws IOException {
wbU.setSheetHidden(0, true);
assertTrue(wbU.isSheetHidden(0));
assertFalse(wbU.isSheetHidden(1));
Workbook wb2 = _testDataProvider.writeOutAndReadBack(wbU);
assertTrue(wb2.isSheetHidden(0));
assertFalse(wb2.isSheetHidden(1));
+ wb2.close();
}
/**
* Turn the sheet with one hidden into the one with
* none hidden
*/
- public void testUnHide() {
+ @Test
+ public void testUnHide() throws IOException {
wbH.setSheetHidden(0, false);
assertFalse(wbH.isSheetHidden(0));
assertFalse(wbH.isSheetHidden(1));
Workbook wb2 = _testDataProvider.writeOutAndReadBack(wbH);
assertFalse(wb2.isSheetHidden(0));
assertFalse(wb2.isSheetHidden(1));
+ wb2.close();
}
}
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org