From: Josh Micich Date: Sat, 26 Dec 2009 00:25:59 +0000 (+0000) Subject: Clean-up in BaseTestSheetShiftRows and subclasses. X-Git-Tag: REL_3_7_BETA1~180 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=136e09be840acfdf69f77b42725d2c2a6ce1b2f6;p=poi.git Clean-up in BaseTestSheetShiftRows and subclasses. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@893909 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestSheetShiftRows.java b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestSheetShiftRows.java deleted file mode 100644 index 2606857313..0000000000 --- a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestSheetShiftRows.java +++ /dev/null @@ -1,63 +0,0 @@ -/* ==================================================================== - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -==================================================================== */ - -package org.apache.poi.xssf.usermodel; - -import org.apache.poi.ss.usermodel.BaseTestSheetShiftRows; -import org.apache.poi.ss.ITestDataProvider; -import org.apache.poi.xssf.XSSFITestDataProvider; - -/** - * @author Yegor Kozlov - */ -public final class TestSheetShiftRows extends BaseTestSheetShiftRows { - - @Override - protected ITestDataProvider getTestDataProvider(){ - return XSSFITestDataProvider.getInstance(); - } - - public void testShiftRows() { - baseTestShiftRows("SimpleMultiCell.xlsx"); - } - - public void testShiftRow() { - baseTestShiftRow(); - } - - public void testShiftNames() { - baseTestShiftWithNames(); - } - - //TODO support shifting of page breaks - public void $testShiftRowBreaks() { - baseTestShiftRowBreaks(); - } - - //TODO support shifting of comments. - public void $testShiftWithComments() { - baseTestShiftWithComments("comments.xlsx"); - } - - public void testShiftWithFormulas() { - baseTestShiftWithFormulas("ForShifting.xlsx"); - } - - public void testShiftWithMergedRegions() { - baseTestShiftWithMergedRegions(); - } -} diff --git a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheetShiftRows.java b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheetShiftRows.java new file mode 100644 index 0000000000..a8e7374c96 --- /dev/null +++ b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheetShiftRows.java @@ -0,0 +1,39 @@ +/* ==================================================================== + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +==================================================================== */ + +package org.apache.poi.xssf.usermodel; + +import org.apache.poi.ss.usermodel.BaseTestSheetShiftRows; +import org.apache.poi.xssf.XSSFITestDataProvider; + +/** + * @author Yegor Kozlov + */ +public final class TestXSSFSheetShiftRows extends BaseTestSheetShiftRows { + + public TestXSSFSheetShiftRows(){ + super(XSSFITestDataProvider.instance); + } + + public void testShiftRowBreaks() { // disabled test from superclass + // TODO - support shifting of page breaks + } + + public void testShiftWithComments() { // disabled test from superclass + // TODO - support shifting of comments. + } +} diff --git a/src/testcases/org/apache/poi/hssf/usermodel/AllUserModelTests.java b/src/testcases/org/apache/poi/hssf/usermodel/AllUserModelTests.java index 08d35bf6af..632e0b5133 100644 --- a/src/testcases/org/apache/poi/hssf/usermodel/AllUserModelTests.java +++ b/src/testcases/org/apache/poi/hssf/usermodel/AllUserModelTests.java @@ -66,7 +66,7 @@ public class AllUserModelTests { result.addTestSuite(TestReadWriteChart.class); result.addTestSuite(TestSanityChecker.class); result.addTestSuite(TestSheetHiding.class); - result.addTestSuite(TestSheetShiftRows.class); + result.addTestSuite(TestHSSFSheetShiftRows.class); if (false) { // deliberately avoiding this one result.addTestSuite(TestUnfixedBugs.class); } diff --git a/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFSheetShiftRows.java b/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFSheetShiftRows.java new file mode 100644 index 0000000000..8c4c08d4fa --- /dev/null +++ b/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFSheetShiftRows.java @@ -0,0 +1,31 @@ +/* ==================================================================== + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +==================================================================== */ + +package org.apache.poi.hssf.usermodel; + +import org.apache.poi.hssf.HSSFITestDataProvider; +import org.apache.poi.ss.usermodel.BaseTestSheetShiftRows; + +/** + * @author Yegor Kozlov + */ +public final class TestHSSFSheetShiftRows extends BaseTestSheetShiftRows { + + public TestHSSFSheetShiftRows() { + super(HSSFITestDataProvider.instance); + } +} diff --git a/src/testcases/org/apache/poi/hssf/usermodel/TestSheetShiftRows.java b/src/testcases/org/apache/poi/hssf/usermodel/TestSheetShiftRows.java deleted file mode 100644 index bcb6b34d03..0000000000 --- a/src/testcases/org/apache/poi/hssf/usermodel/TestSheetShiftRows.java +++ /dev/null @@ -1,65 +0,0 @@ -/* ==================================================================== - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -==================================================================== */ - -package org.apache.poi.hssf.usermodel; - -import org.apache.poi.hssf.HSSFITestDataProvider; -import org.apache.poi.ss.usermodel.BaseTestSheetShiftRows; - -/** - * Tests row shifting capabilities. - * - * - * @author Shawn Laubach (slaubach at apache dot com) - * @author Toshiaki Kamoshida (kamoshida.toshiaki at future dot co dot jp) - */ -public final class TestSheetShiftRows extends BaseTestSheetShiftRows { - - - @Override - protected HSSFITestDataProvider getTestDataProvider(){ - return HSSFITestDataProvider.getInstance(); - } - - public void testShiftRows() { - baseTestShiftRows("SimpleMultiCell.xls"); - } - - public void testShiftRow() { - baseTestShiftRow(); - } - - public void testShiftNames() { - baseTestShiftWithNames(); - } - - public void testShiftRowBreaks() { - baseTestShiftRowBreaks(); - } - - public void testShiftWithComments() { - baseTestShiftWithComments("comments.xls"); - } - - public void testShiftWithFormulas() { - baseTestShiftWithFormulas("ForShifting.xls"); - } - - public void testShiftWithMergedRegions() { - baseTestShiftWithMergedRegions(); - } -} diff --git a/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetShiftRows.java b/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetShiftRows.java index 2ff4e759b4..1612a09eaa 100644 --- a/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetShiftRows.java +++ b/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheetShiftRows.java @@ -18,6 +18,7 @@ package org.apache.poi.ss.usermodel; import junit.framework.TestCase; + import org.apache.poi.ss.ITestDataProvider; import org.apache.poi.ss.util.CellRangeAddress; @@ -27,12 +28,13 @@ import org.apache.poi.ss.util.CellRangeAddress; * @author Shawn Laubach (slaubach at apache dot com) * @author Toshiaki Kamoshida (kamoshida.toshiaki at future dot co dot jp) */ -public abstract class BaseTestSheetShiftRows extends TestCase { +public abstract class BaseTestSheetShiftRows extends TestCase { - /** - * @return an object that provides test data in HSSF / XSSF specific way - */ - protected abstract ITestDataProvider getTestDataProvider(); + private final ITestDataProvider _testDataProvider; + + protected BaseTestSheetShiftRows(ITestDataProvider testDataProvider) { + _testDataProvider = testDataProvider; + } /** * Tests the shiftRows function. Does three different shifts. @@ -42,15 +44,16 @@ public abstract class BaseTestSheetShiftRows extends TestCase { * * @param sampleName the sample file to test against */ - public final void baseTestShiftRows(String sampleName){ + public final void testShiftRows(){ // Read initial file in - Workbook wb = getTestDataProvider().openSampleWorkbook(sampleName); + String sampleName = "SimpleMultiCell." + _testDataProvider.getStandardFileNameExtension(); + Workbook wb = _testDataProvider.openSampleWorkbook(sampleName); Sheet s = wb.getSheetAt( 0 ); // Shift the second row down 1 and write to temp file s.shiftRows( 1, 1, 1 ); - wb = getTestDataProvider().writeOutAndReadBack(wb); + wb = _testDataProvider.writeOutAndReadBack(wb); // Read from temp file and check the number of cells in each // row (in original file each row was unique) @@ -65,7 +68,7 @@ public abstract class BaseTestSheetShiftRows extends TestCase { // Shift rows 1-3 down 3 in the current one. This tests when // 1 row is blank. Write to a another temp file s.shiftRows( 0, 2, 3 ); - wb = getTestDataProvider().writeOutAndReadBack(wb); + wb = _testDataProvider.writeOutAndReadBack(wb); // Read and ensure things are where they should be s = wb.getSheetAt(0); @@ -77,12 +80,12 @@ public abstract class BaseTestSheetShiftRows extends TestCase { assertEquals(s.getRow(5).getPhysicalNumberOfCells(), 2); // Read the first file again - wb = getTestDataProvider().openSampleWorkbook(sampleName); + wb = _testDataProvider.openSampleWorkbook(sampleName); s = wb.getSheetAt( 0 ); // Shift rows 3 and 4 up and write to temp file s.shiftRows( 2, 3, -2 ); - wb = getTestDataProvider().writeOutAndReadBack(wb); + wb = _testDataProvider.writeOutAndReadBack(wb); s = wb.getSheetAt( 0 ); assertEquals(s.getRow(0).getPhysicalNumberOfCells(), 3); assertEquals(s.getRow(1).getPhysicalNumberOfCells(), 4); @@ -98,8 +101,8 @@ public abstract class BaseTestSheetShiftRows extends TestCase { /** * Tests when rows are null. */ - public final void baseTestShiftRow() { - Workbook b = getTestDataProvider().createWorkbook(); + public final void testShiftRow() { + Workbook b = _testDataProvider.createWorkbook(); Sheet s = b.createSheet(); s.createRow(0).createCell(0).setCellValue("TEST1"); s.createRow(3).createCell(0).setCellValue("TEST2"); @@ -109,8 +112,8 @@ public abstract class BaseTestSheetShiftRows extends TestCase { /** * Tests when shifting the first row. */ - public final void baseTestActiveCell() { - Workbook b = getTestDataProvider().createWorkbook(); + public final void testActiveCell() { + Workbook b = _testDataProvider.createWorkbook(); Sheet s = b.createSheet(); s.createRow(0).createCell(0).setCellValue("TEST1"); @@ -120,10 +123,9 @@ public abstract class BaseTestSheetShiftRows extends TestCase { /** * When shifting rows, the page breaks should go with it - * */ - public final void baseTestShiftRowBreaks() { - Workbook b = getTestDataProvider().createWorkbook(); + public void testShiftRowBreaks() { // TODO - enable XSSF test + Workbook b = _testDataProvider.createWorkbook(); Sheet s = b.createSheet(); Row row = s.createRow(4); row.createCell(0).setCellValue("test"); @@ -133,9 +135,9 @@ public abstract class BaseTestSheetShiftRows extends TestCase { assertTrue("Row number 6 should have a pagebreak", s.isRowBroken(6)); } + public void testShiftWithComments() { // TODO - enable XSSF test - public final void baseTestShiftWithComments(String sampleName) { - Workbook wb = getTestDataProvider().openSampleWorkbook(sampleName); + Workbook wb = _testDataProvider.openSampleWorkbook("comments." + _testDataProvider.getStandardFileNameExtension()); Sheet sheet = wb.getSheet("Sheet1"); assertEquals(3, sheet.getLastRowNum()); @@ -173,7 +175,7 @@ public abstract class BaseTestSheetShiftRows extends TestCase { // Write out and read back in again // Ensure that the changes were persisted - wb = getTestDataProvider().writeOutAndReadBack(wb); + wb = _testDataProvider.writeOutAndReadBack(wb); sheet = wb.getSheet("Sheet1"); assertEquals(4, sheet.getLastRowNum()); @@ -192,8 +194,8 @@ public abstract class BaseTestSheetShiftRows extends TestCase { assertEquals(comment4,comment4_shifted); } - public final void baseTestShiftWithNames() { - Workbook wb = getTestDataProvider().createWorkbook(); + public final void testShiftWithNames() { + Workbook wb = _testDataProvider.createWorkbook(); Sheet sheet1 = wb.createSheet("Sheet1"); wb.createSheet("Sheet2"); Row row = sheet1.createRow(0); @@ -234,8 +236,8 @@ public abstract class BaseTestSheetShiftRows extends TestCase { assertEquals("A1", name4.getRefersToFormula()); } - public final void baseTestShiftWithMergedRegions() { - Workbook wb = getTestDataProvider().createWorkbook(); + public final void testShiftWithMergedRegions() { + Workbook wb = _testDataProvider.createWorkbook(); Sheet sheet = wb.createSheet(); Row row = sheet.createRow(0); row.createCell(0).setCellValue(1.1); @@ -252,11 +254,9 @@ public abstract class BaseTestSheetShiftRows extends TestCase { /** * See bug #34023 - * - * @param sampleName the sample file to test against */ - public void baseTestShiftWithFormulas(String sampleName) { - Workbook wb = getTestDataProvider().openSampleWorkbook(sampleName); + public final void testShiftWithFormulas() { + Workbook wb = _testDataProvider.openSampleWorkbook("ForShifting." + _testDataProvider.getStandardFileNameExtension()); Sheet sheet = wb.getSheet("Sheet1"); assertEquals(20, sheet.getLastRowNum());