mirror of https://github.com/apache/poi.git
Bug 35897 - Password protected files
+ Junit4 modifications, needed for expected exceptions git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1557281 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
3a177b2706
commit
77436875d1
|
@ -17,6 +17,7 @@
|
|||
|
||||
package org.apache.poi.hssf.record;
|
||||
|
||||
import org.apache.poi.EncryptedDocumentException;
|
||||
import org.apache.poi.util.HexDump;
|
||||
import org.apache.poi.util.LittleEndianOutput;
|
||||
|
||||
|
@ -49,7 +50,7 @@ public final class FilePassRecord extends StandardRecord {
|
|||
|
||||
switch (_encryptionType) {
|
||||
case ENCRYPTION_XOR:
|
||||
throw new RecordFormatException("HSSF does not currently support XOR obfuscation");
|
||||
throw new EncryptedDocumentException("HSSF does not currently support XOR obfuscation");
|
||||
case ENCRYPTION_OTHER:
|
||||
// handled below
|
||||
break;
|
||||
|
@ -63,7 +64,7 @@ public final class FilePassRecord extends StandardRecord {
|
|||
break;
|
||||
case ENCRYPTION_OTHER_CAPI_2:
|
||||
case ENCRYPTION_OTHER_CAPI_3:
|
||||
throw new RecordFormatException(
|
||||
throw new EncryptedDocumentException(
|
||||
"HSSF does not currently support CryptoAPI encryption");
|
||||
default:
|
||||
throw new RecordFormatException("Unknown encryption info " + _encryptionInfo);
|
||||
|
|
|
@ -22,10 +22,40 @@ import java.lang.reflect.Constructor;
|
|||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.lang.reflect.Method;
|
||||
import java.lang.reflect.Modifier;
|
||||
import java.util.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.poi.hssf.record.chart.*;
|
||||
import org.apache.poi.hssf.record.pivottable.*;
|
||||
import org.apache.poi.EncryptedDocumentException;
|
||||
import org.apache.poi.hssf.record.chart.BeginRecord;
|
||||
import org.apache.poi.hssf.record.chart.CatLabRecord;
|
||||
import org.apache.poi.hssf.record.chart.ChartEndBlockRecord;
|
||||
import org.apache.poi.hssf.record.chart.ChartEndObjectRecord;
|
||||
import org.apache.poi.hssf.record.chart.ChartFRTInfoRecord;
|
||||
import org.apache.poi.hssf.record.chart.ChartRecord;
|
||||
import org.apache.poi.hssf.record.chart.ChartStartBlockRecord;
|
||||
import org.apache.poi.hssf.record.chart.ChartStartObjectRecord;
|
||||
import org.apache.poi.hssf.record.chart.ChartTitleFormatRecord;
|
||||
import org.apache.poi.hssf.record.chart.DataFormatRecord;
|
||||
import org.apache.poi.hssf.record.chart.EndRecord;
|
||||
import org.apache.poi.hssf.record.chart.LegendRecord;
|
||||
import org.apache.poi.hssf.record.chart.LinkedDataRecord;
|
||||
import org.apache.poi.hssf.record.chart.SeriesRecord;
|
||||
import org.apache.poi.hssf.record.chart.SeriesTextRecord;
|
||||
import org.apache.poi.hssf.record.chart.SeriesToChartGroupRecord;
|
||||
import org.apache.poi.hssf.record.chart.ValueRangeRecord;
|
||||
import org.apache.poi.hssf.record.pivottable.DataItemRecord;
|
||||
import org.apache.poi.hssf.record.pivottable.ExtendedPivotTableViewFieldsRecord;
|
||||
import org.apache.poi.hssf.record.pivottable.PageItemRecord;
|
||||
import org.apache.poi.hssf.record.pivottable.StreamIDRecord;
|
||||
import org.apache.poi.hssf.record.pivottable.ViewDefinitionRecord;
|
||||
import org.apache.poi.hssf.record.pivottable.ViewFieldsRecord;
|
||||
import org.apache.poi.hssf.record.pivottable.ViewSourceRecord;
|
||||
|
||||
/**
|
||||
* Title: Record Factory<P>
|
||||
|
@ -62,7 +92,14 @@ public final class RecordFactory {
|
|||
} catch (IllegalAccessException e) {
|
||||
throw new RuntimeException(e);
|
||||
} catch (InvocationTargetException e) {
|
||||
throw new RecordFormatException("Unable to construct record instance" , e.getTargetException());
|
||||
Throwable t = e.getTargetException();
|
||||
if (t instanceof RecordFormatException) {
|
||||
throw (RecordFormatException)t;
|
||||
} else if (t instanceof EncryptedDocumentException) {
|
||||
throw (EncryptedDocumentException)t;
|
||||
} else {
|
||||
throw new RecordFormatException("Unable to construct record instance" , t);
|
||||
}
|
||||
}
|
||||
}
|
||||
public Class<? extends Record> getRecordClass() {
|
||||
|
|
|
@ -17,9 +17,6 @@
|
|||
|
||||
package org.apache.poi.xssf;
|
||||
|
||||
import junit.framework.Test;
|
||||
import junit.framework.TestSuite;
|
||||
|
||||
import org.apache.poi.ss.format.TestCellFormatPart;
|
||||
import org.apache.poi.ss.util.TestCellReference;
|
||||
import org.apache.poi.xssf.eventusermodel.TestXSSFReader;
|
||||
|
@ -31,27 +28,26 @@ import org.apache.poi.xssf.model.TestStylesTable;
|
|||
import org.apache.poi.xssf.usermodel.AllXSSFUsermodelTests;
|
||||
import org.apache.poi.xssf.util.TestCTColComparator;
|
||||
import org.apache.poi.xssf.util.TestNumericRanges;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.junit.runners.Suite;
|
||||
|
||||
|
||||
/**
|
||||
* Collects all tests for <tt>org.apache.poi.xssf</tt> and sub-packages.
|
||||
*
|
||||
* @author Josh Micich
|
||||
*/
|
||||
@RunWith(Suite.class)
|
||||
@Suite.SuiteClasses({
|
||||
AllXSSFUsermodelTests.class,
|
||||
TestXSSFReader.class,
|
||||
TestXSSFExcelExtractor.class,
|
||||
TestLoadSaveXSSF.class,
|
||||
TestCommentsTable.class,
|
||||
TestSharedStringsTable.class,
|
||||
TestStylesTable.class,
|
||||
TestCellReference.class,
|
||||
TestCTColComparator.class,
|
||||
TestNumericRanges.class,
|
||||
TestCellFormatPart.class
|
||||
})
|
||||
public final class AllXSSFTests {
|
||||
|
||||
public static Test suite() {
|
||||
TestSuite result = new TestSuite(AllXSSFTests.class.getName());
|
||||
result.addTest(AllXSSFUsermodelTests.suite());
|
||||
result.addTestSuite(TestXSSFReader.class);
|
||||
result.addTestSuite(TestXSSFExcelExtractor.class);
|
||||
result.addTestSuite(TestLoadSaveXSSF.class);
|
||||
result.addTestSuite(TestCommentsTable.class);
|
||||
result.addTestSuite(TestSharedStringsTable.class);
|
||||
result.addTestSuite(TestStylesTable.class);
|
||||
result.addTestSuite(TestCellReference.class);
|
||||
result.addTestSuite(TestCTColComparator.class);
|
||||
result.addTestSuite(TestNumericRanges.class);
|
||||
result.addTestSuite(TestCellFormatPart.class);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,53 +17,45 @@
|
|||
|
||||
package org.apache.poi.xssf.usermodel;
|
||||
|
||||
import junit.framework.Test;
|
||||
import junit.framework.TestSuite;
|
||||
|
||||
import org.apache.poi.xssf.usermodel.extensions.TestXSSFBorder;
|
||||
import org.apache.poi.xssf.usermodel.extensions.TestXSSFCellFill;
|
||||
import org.apache.poi.xssf.usermodel.extensions.TestXSSFSheetComments;
|
||||
import org.apache.poi.xssf.usermodel.helpers.TestColumnHelper;
|
||||
import org.apache.poi.xssf.usermodel.helpers.TestHeaderFooterHelper;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.junit.runners.Suite;
|
||||
|
||||
/**
|
||||
* Collects all tests for <tt>org.apache.poi.xssf.usermodel</tt> and sub-packages.
|
||||
*
|
||||
* @author Josh Micich
|
||||
*/
|
||||
@RunWith(Suite.class)
|
||||
@Suite.SuiteClasses({
|
||||
TestFormulaEvaluatorOnXSSF.class,
|
||||
TestSheetHiding.class,
|
||||
TestXSSFBugs.class,
|
||||
TestXSSFDataFormat.class,
|
||||
TestXSSFCellStyle.class,
|
||||
TestXSSFComment.class,
|
||||
TestXSSFDialogSheet.class,
|
||||
TestXSSFDrawing.class,
|
||||
TestXSSFFont.class,
|
||||
TestXSSFFormulaEvaluation.class,
|
||||
TestXSSFHeaderFooter.class,
|
||||
TestXSSFHyperlink.class,
|
||||
TestXSSFName.class,
|
||||
TestXSSFPicture.class,
|
||||
TestXSSFPictureData.class,
|
||||
TestXSSFPrintSetup.class,
|
||||
TestXSSFRichTextString.class,
|
||||
TestXSSFRow.class,
|
||||
TestXSSFSheet.class,
|
||||
TestXSSFSheetUpdateArrayFormulas.class,
|
||||
TestXSSFWorkbook.class,
|
||||
TestXSSFBorder.class,
|
||||
TestXSSFCellFill.class,
|
||||
TestXSSFSheetComments.class,
|
||||
TestColumnHelper.class,
|
||||
TestHeaderFooterHelper.class
|
||||
})
|
||||
public final class AllXSSFUsermodelTests {
|
||||
|
||||
public static Test suite() {
|
||||
TestSuite result = new TestSuite(AllXSSFUsermodelTests.class.getName());
|
||||
result.addTestSuite(TestFormulaEvaluatorOnXSSF.class);
|
||||
result.addTestSuite(TestSheetHiding.class);
|
||||
result.addTestSuite(TestXSSFBugs.class);
|
||||
result.addTestSuite(TestXSSFDataFormat.class);
|
||||
result.addTestSuite(TestXSSFCellStyle.class);
|
||||
result.addTestSuite(TestXSSFComment.class);
|
||||
result.addTestSuite(TestXSSFDialogSheet.class);
|
||||
result.addTestSuite(TestXSSFDrawing.class);
|
||||
result.addTestSuite(TestXSSFFont.class);
|
||||
result.addTestSuite(TestXSSFFormulaEvaluation.class);
|
||||
result.addTestSuite(TestXSSFHeaderFooter.class);
|
||||
result.addTestSuite(TestXSSFHyperlink.class);
|
||||
result.addTestSuite(TestXSSFName.class);
|
||||
result.addTestSuite(TestXSSFPicture.class);
|
||||
result.addTestSuite(TestXSSFPictureData.class);
|
||||
result.addTestSuite(TestXSSFPrintSetup.class);
|
||||
result.addTestSuite(TestXSSFRichTextString.class);
|
||||
result.addTestSuite(TestXSSFRow.class);
|
||||
result.addTestSuite(TestXSSFSheet.class);
|
||||
result.addTestSuite(TestXSSFSheetUpdateArrayFormulas.class);
|
||||
result.addTestSuite(TestXSSFWorkbook.class);
|
||||
|
||||
result.addTestSuite(TestXSSFBorder.class);
|
||||
result.addTestSuite(TestXSSFCellFill.class);
|
||||
result.addTestSuite(TestXSSFSheetComments.class);
|
||||
|
||||
result.addTestSuite(TestColumnHelper.class);
|
||||
result.addTestSuite(TestHeaderFooterHelper.class);
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,6 +17,13 @@
|
|||
|
||||
package org.apache.poi.xssf.usermodel;
|
||||
|
||||
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.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.InputStream;
|
||||
|
@ -35,13 +42,32 @@ import org.apache.poi.ss.formula.WorkbookEvaluator;
|
|||
import org.apache.poi.ss.formula.eval.ErrorEval;
|
||||
import org.apache.poi.ss.formula.eval.ValueEval;
|
||||
import org.apache.poi.ss.formula.functions.Function;
|
||||
import org.apache.poi.ss.usermodel.*;
|
||||
import org.apache.poi.ss.usermodel.BaseTestBugzillaIssues;
|
||||
import org.apache.poi.ss.usermodel.Cell;
|
||||
import org.apache.poi.ss.usermodel.CellStyle;
|
||||
import org.apache.poi.ss.usermodel.CellValue;
|
||||
import org.apache.poi.ss.usermodel.ClientAnchor;
|
||||
import org.apache.poi.ss.usermodel.Comment;
|
||||
import org.apache.poi.ss.usermodel.CreationHelper;
|
||||
import org.apache.poi.ss.usermodel.DataFormatter;
|
||||
import org.apache.poi.ss.usermodel.Drawing;
|
||||
import org.apache.poi.ss.usermodel.Font;
|
||||
import org.apache.poi.ss.usermodel.FormulaError;
|
||||
import org.apache.poi.ss.usermodel.FormulaEvaluator;
|
||||
import org.apache.poi.ss.usermodel.IndexedColors;
|
||||
import org.apache.poi.ss.usermodel.Name;
|
||||
import org.apache.poi.ss.usermodel.Row;
|
||||
import org.apache.poi.ss.usermodel.Sheet;
|
||||
import org.apache.poi.ss.usermodel.Workbook;
|
||||
import org.apache.poi.ss.usermodel.WorkbookFactory;
|
||||
import org.apache.poi.ss.util.AreaReference;
|
||||
import org.apache.poi.ss.util.CellReference;
|
||||
import org.apache.poi.xssf.XSSFITestDataProvider;
|
||||
import org.apache.poi.xssf.XSSFTestDataSamples;
|
||||
import org.apache.poi.xssf.model.CalculationChain;
|
||||
import org.apache.poi.xssf.usermodel.extensions.XSSFCellFill;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Test;
|
||||
import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTCols;
|
||||
import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorksheet;
|
||||
|
||||
|
@ -55,15 +81,17 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* test writing a file with large number of unique strings,
|
||||
* open resulting file in Excel to check results!
|
||||
*/
|
||||
public void test15375_2() {
|
||||
baseTest15375(1000);
|
||||
@Test
|
||||
public void bug15375_2() {
|
||||
bug15375(1000);
|
||||
}
|
||||
|
||||
/**
|
||||
* Named ranges had the right reference, but
|
||||
* the wrong sheet name
|
||||
*/
|
||||
public void test45430() {
|
||||
@Test
|
||||
public void bug45430() {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("45430.xlsx");
|
||||
assertFalse(wb.isMacroEnabled());
|
||||
assertEquals(3, wb.getNumberOfNames());
|
||||
|
@ -92,7 +120,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
/**
|
||||
* We should carry vba macros over after save
|
||||
*/
|
||||
public void test45431() throws Exception {
|
||||
@Test
|
||||
public void bug45431() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("45431.xlsm");
|
||||
OPCPackage pkg = wb.getPackage();
|
||||
assertTrue(wb.isMacroEnabled());
|
||||
|
@ -138,7 +167,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
assertNotNull(drw);
|
||||
}
|
||||
|
||||
public void test47504() {
|
||||
@Test
|
||||
public void bug47504() {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("47504.xlsx");
|
||||
assertEquals(1, wb.getNumberOfSheets());
|
||||
XSSFSheet sh = wb.getSheetAt(0);
|
||||
|
@ -163,14 +193,16 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* Clearly Excel shouldn't do this, but test that we can
|
||||
* read the file despite the naughtyness
|
||||
*/
|
||||
public void test49020() throws Exception {
|
||||
@Test
|
||||
public void bug49020() throws Exception {
|
||||
/*XSSFWorkbook wb =*/ XSSFTestDataSamples.openSampleWorkbook("BrNotClosed.xlsx");
|
||||
}
|
||||
|
||||
/**
|
||||
* ensure that CTPhoneticPr is loaded by the ooxml test suite so that it is included in poi-ooxml-schemas
|
||||
*/
|
||||
public void test49325() throws Exception {
|
||||
@Test
|
||||
public void bug49325() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("49325.xlsx");
|
||||
CTWorksheet sh = wb.getSheetAt(0).getCTWorksheet();
|
||||
assertNotNull(sh.getPhoneticPr());
|
||||
|
@ -180,7 +212,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* Names which are defined with a Sheet
|
||||
* should return that sheet index properly
|
||||
*/
|
||||
public void test48923() throws Exception {
|
||||
@Test
|
||||
public void bug48923() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("48923.xlsx");
|
||||
assertEquals(4, wb.getNumberOfNames());
|
||||
|
||||
|
@ -218,7 +251,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
*
|
||||
* TODO: delete this test case when MROUND and VAR are implemented
|
||||
*/
|
||||
public void test48539() throws Exception {
|
||||
@Test
|
||||
public void bug48539() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("48539.xlsx");
|
||||
assertEquals(3, wb.getNumberOfSheets());
|
||||
|
||||
|
@ -250,7 +284,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* Foreground colours should be found even if
|
||||
* a theme is used
|
||||
*/
|
||||
public void test48779() throws Exception {
|
||||
@Test
|
||||
public void bug48779() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("48779.xlsx");
|
||||
XSSFCell cell = wb.getSheetAt(0).getRow(0).getCell(0);
|
||||
XSSFCellStyle cs = cell.getCellStyle();
|
||||
|
@ -265,7 +300,7 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
|
||||
XSSFCellFill fg = wb.getStylesSource().getFillAt(2);
|
||||
assertEquals(0, fg.getFillForegroundColor().getIndexed());
|
||||
assertEquals(0.0, fg.getFillForegroundColor().getTint());
|
||||
assertEquals(0.0, fg.getFillForegroundColor().getTint(), 0);
|
||||
assertEquals("FFFF0000", fg.getFillForegroundColor().getARGBHex());
|
||||
assertEquals(64, fg.getFillBackgroundColor().getIndexed());
|
||||
|
||||
|
@ -288,7 +323,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* With XSSF, that wasn't the case, but this verfies
|
||||
* that it now is again
|
||||
*/
|
||||
public void test48718() throws Exception {
|
||||
@Test
|
||||
public void bug48718() throws Exception {
|
||||
// Verify the HSSF behaviour
|
||||
// Then ensure the same for XSSF
|
||||
Workbook[] wbs = new Workbook[] {
|
||||
|
@ -320,28 +356,29 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* Ensure General and @ format are working properly
|
||||
* for integers
|
||||
*/
|
||||
public void test47490() throws Exception {
|
||||
@Test
|
||||
public void bug47490() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("GeneralFormatTests.xlsx");
|
||||
Sheet s = wb.getSheetAt(1);
|
||||
Row r;
|
||||
DataFormatter df = new DataFormatter();
|
||||
|
||||
r = s.getRow(1);
|
||||
assertEquals(1.0, r.getCell(2).getNumericCellValue());
|
||||
assertEquals(1.0, r.getCell(2).getNumericCellValue(), 0);
|
||||
assertEquals("General", r.getCell(2).getCellStyle().getDataFormatString());
|
||||
assertEquals("1", df.formatCellValue(r.getCell(2)));
|
||||
assertEquals("1", df.formatRawCellContents(1.0, -1, "@"));
|
||||
assertEquals("1", df.formatRawCellContents(1.0, -1, "General"));
|
||||
|
||||
r = s.getRow(2);
|
||||
assertEquals(12.0, r.getCell(2).getNumericCellValue());
|
||||
assertEquals(12.0, r.getCell(2).getNumericCellValue(), 0);
|
||||
assertEquals("General", r.getCell(2).getCellStyle().getDataFormatString());
|
||||
assertEquals("12", df.formatCellValue(r.getCell(2)));
|
||||
assertEquals("12", df.formatRawCellContents(12.0, -1, "@"));
|
||||
assertEquals("12", df.formatRawCellContents(12.0, -1, "General"));
|
||||
|
||||
r = s.getRow(3);
|
||||
assertEquals(123.0, r.getCell(2).getNumericCellValue());
|
||||
assertEquals(123.0, r.getCell(2).getNumericCellValue(), 0);
|
||||
assertEquals("General", r.getCell(2).getCellStyle().getDataFormatString());
|
||||
assertEquals("123", df.formatCellValue(r.getCell(2)));
|
||||
assertEquals("123", df.formatRawCellContents(123.0, -1, "@"));
|
||||
|
@ -353,7 +390,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* and with the docs on when fetching the wrong
|
||||
* kind of value from a Formula cell
|
||||
*/
|
||||
public void test47815() {
|
||||
@Test
|
||||
public void bug47815() {
|
||||
Workbook[] wbs = new Workbook[] {
|
||||
new HSSFWorkbook(),
|
||||
new XSSFWorkbook()
|
||||
|
@ -388,7 +426,7 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
assertEquals(Cell.CELL_TYPE_STRING, cfs.getCachedFormulaResultType());
|
||||
|
||||
// Different ways of retrieving
|
||||
assertEquals(1.2, cn.getNumericCellValue());
|
||||
assertEquals(1.2, cn.getNumericCellValue(), 0);
|
||||
try {
|
||||
cn.getRichStringCellValue();
|
||||
fail();
|
||||
|
@ -400,7 +438,7 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
fail();
|
||||
} catch(IllegalStateException e) {}
|
||||
|
||||
assertEquals(1.2, cfn.getNumericCellValue());
|
||||
assertEquals(1.2, cfn.getNumericCellValue(), 0);
|
||||
try {
|
||||
cfn.getRichStringCellValue();
|
||||
fail();
|
||||
|
@ -422,14 +460,16 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
*
|
||||
* The OPC spec tolerates both of these peculiarities, so does POI
|
||||
*/
|
||||
public void test49609() throws Exception {
|
||||
@Test
|
||||
public void bug49609() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("49609.xlsx");
|
||||
assertEquals("FAM", wb.getSheetName(0));
|
||||
assertEquals("Cycle", wb.getSheetAt(0).getRow(0).getCell(1).getStringCellValue());
|
||||
|
||||
}
|
||||
|
||||
public void test49783() throws Exception {
|
||||
@Test
|
||||
public void bug49783() throws Exception {
|
||||
Workbook wb = XSSFTestDataSamples.openSampleWorkbook("49783.xlsx");
|
||||
Sheet sheet = wb.getSheetAt(0);
|
||||
FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator();
|
||||
|
@ -460,7 +500,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* preserve spaces to the 2nd bit, lest we end up
|
||||
* with something like "helloworld" !
|
||||
*/
|
||||
public void test49941() throws Exception {
|
||||
@Test
|
||||
public void bug49941() throws Exception {
|
||||
XSSFWorkbook wb = new XSSFWorkbook();
|
||||
XSSFSheet s = wb.createSheet();
|
||||
XSSFRow r = s.createRow(0);
|
||||
|
@ -534,7 +575,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
/**
|
||||
* Repeatedly writing the same file which has styles
|
||||
*/
|
||||
public void test49940() throws Exception {
|
||||
@Test
|
||||
public void bug49940() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("styles.xlsx");
|
||||
assertEquals(3, wb.getNumberOfSheets());
|
||||
assertEquals(10, wb.getStylesSource().getNumCellStyles());
|
||||
|
@ -560,7 +602,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* Various ways of removing a cell formula should all zap
|
||||
* the calcChain entry.
|
||||
*/
|
||||
public void test49966() throws Exception {
|
||||
@Test
|
||||
public void bug49966() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("shared_formulas.xlsx");
|
||||
XSSFSheet sheet = wb.getSheetAt(0);
|
||||
|
||||
|
@ -599,7 +642,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
|
||||
}
|
||||
|
||||
public void test49156() throws Exception {
|
||||
@Test
|
||||
public void bug49156() throws Exception {
|
||||
Workbook wb = XSSFTestDataSamples.openSampleWorkbook("49156.xlsx");
|
||||
FormulaEvaluator formulaEvaluator = wb.getCreationHelper().createFormulaEvaluator();
|
||||
|
||||
|
@ -616,31 +660,33 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
/**
|
||||
* Newlines are valid characters in a formula
|
||||
*/
|
||||
public void test50440And51875() throws Exception {
|
||||
@Test
|
||||
public void bug50440And51875() throws Exception {
|
||||
Workbook wb = XSSFTestDataSamples.openSampleWorkbook("NewlineInFormulas.xlsx");
|
||||
Sheet s = wb.getSheetAt(0);
|
||||
Cell c = s.getRow(0).getCell(0);
|
||||
|
||||
assertEquals("SUM(\n1,2\n)", c.getCellFormula());
|
||||
assertEquals(3.0, c.getNumericCellValue());
|
||||
assertEquals(3.0, c.getNumericCellValue(), 0);
|
||||
|
||||
FormulaEvaluator formulaEvaluator = wb.getCreationHelper().createFormulaEvaluator();
|
||||
formulaEvaluator.evaluateFormulaCell(c);
|
||||
|
||||
assertEquals("SUM(\n1,2\n)", c.getCellFormula());
|
||||
assertEquals(3.0, c.getNumericCellValue());
|
||||
assertEquals(3.0, c.getNumericCellValue(), 0);
|
||||
|
||||
// For 51875
|
||||
Cell b3 = s.getRow(2).getCell(1);
|
||||
formulaEvaluator.evaluateFormulaCell(b3);
|
||||
assertEquals("B1+B2", b3.getCellFormula()); // The newline is lost for shared formulas
|
||||
assertEquals(3.0, b3.getNumericCellValue());
|
||||
assertEquals(3.0, b3.getNumericCellValue(), 0);
|
||||
}
|
||||
|
||||
/**
|
||||
* Moving a cell comment from one cell to another
|
||||
*/
|
||||
public void test50795() throws Exception {
|
||||
@Test
|
||||
public void bug50795() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("50795.xlsx");
|
||||
XSSFSheet sheet = wb.getSheetAt(0);
|
||||
XSSFRow row = sheet.getRow(0);
|
||||
|
@ -695,7 +741,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* shades of white or black.
|
||||
* For those cases, ensure we don't break on reading the colour
|
||||
*/
|
||||
public void test50299() throws Exception {
|
||||
@Test
|
||||
public void bug50299() throws Exception {
|
||||
Workbook wb = XSSFTestDataSamples.openSampleWorkbook("50299.xlsx");
|
||||
|
||||
// Check all the colours
|
||||
|
@ -724,7 +771,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
/**
|
||||
* Excel .xls style indexed colours in a .xlsx file
|
||||
*/
|
||||
public void test50786() throws Exception {
|
||||
@Test
|
||||
public void bug50786() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("50786-indexed_colours.xlsx");
|
||||
XSSFSheet s = wb.getSheetAt(0);
|
||||
XSSFRow r = s.getRow(2);
|
||||
|
@ -745,7 +793,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* If the border colours are set with themes, then we
|
||||
* should still be able to get colours
|
||||
*/
|
||||
public void test50846() throws Exception {
|
||||
@Test
|
||||
public void bug50846() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("50846-border_colours.xlsx");
|
||||
|
||||
XSSFSheet sheet = wb.getSheetAt(0);
|
||||
|
@ -773,7 +822,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* then being set explicitly still should allow the
|
||||
* fetching of the RGB.
|
||||
*/
|
||||
public void test50784() throws Exception {
|
||||
@Test
|
||||
public void bug50784() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("50784-font_theme_colours.xlsx");
|
||||
XSSFSheet s = wb.getSheetAt(0);
|
||||
XSSFRow r = s.getRow(0);
|
||||
|
@ -802,7 +852,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* New lines were being eaten when setting a font on
|
||||
* a rich text string
|
||||
*/
|
||||
public void test48877() throws Exception {
|
||||
@Test
|
||||
public void bug48877() throws Exception {
|
||||
String text = "Use \n with word wrap on to create a new line.\n" +
|
||||
"This line finishes with two trailing spaces. ";
|
||||
|
||||
|
@ -870,7 +921,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
/**
|
||||
* Adding sheets when one has a table, then re-ordering
|
||||
*/
|
||||
public void test50867() throws Exception {
|
||||
@Test
|
||||
public void bug50867() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("50867_with_table.xlsx");
|
||||
assertEquals(3, wb.getNumberOfSheets());
|
||||
|
||||
|
@ -987,7 +1039,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* any print settings that were there before
|
||||
*/
|
||||
@SuppressWarnings("deprecation")
|
||||
public void test49253() throws Exception {
|
||||
@Test
|
||||
public void bug49253() throws Exception {
|
||||
XSSFWorkbook wb1 = new XSSFWorkbook();
|
||||
XSSFWorkbook wb2 = new XSSFWorkbook();
|
||||
|
||||
|
@ -1028,7 +1081,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
/**
|
||||
* Default Column style
|
||||
*/
|
||||
public void test51037() throws Exception {
|
||||
@Test
|
||||
public void bug51037() throws Exception {
|
||||
XSSFWorkbook wb = new XSSFWorkbook();
|
||||
XSSFSheet s = wb.createSheet();
|
||||
|
||||
|
@ -1104,7 +1158,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* Repeatedly writing a file.
|
||||
* Something with the SharedStringsTable currently breaks...
|
||||
*/
|
||||
public void DISABLEDtest46662() throws Exception {
|
||||
@Ignore
|
||||
public void bug46662() throws Exception {
|
||||
// New file
|
||||
XSSFWorkbook wb = new XSSFWorkbook();
|
||||
XSSFTestDataSamples.writeOutAndReadBack(wb);
|
||||
|
@ -1124,7 +1179,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
/**
|
||||
* Colours and styles when the list has gaps in it
|
||||
*/
|
||||
public void test51222() throws Exception {
|
||||
@Test
|
||||
public void bug51222() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("51222.xlsx");
|
||||
XSSFSheet s = wb.getSheetAt(0);
|
||||
|
||||
|
@ -1162,7 +1218,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
// assertEquals("FF1F497D", cA5_1F497D.getCellStyle().getFillForegroundXSSFColor().getARGBHex());
|
||||
}
|
||||
|
||||
public void test51470() throws Exception {
|
||||
@Test
|
||||
public void bug51470() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("51470.xlsx");
|
||||
XSSFSheet sh0 = wb.getSheetAt(0);
|
||||
XSSFSheet sh1 = wb.cloneSheet(0);
|
||||
|
@ -1178,7 +1235,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* Add comments to Sheet 1, when Sheet 2 already has
|
||||
* comments (so /xl/comments1.xml is taken)
|
||||
*/
|
||||
public void test51850() {
|
||||
@Test
|
||||
public void bug51850() {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("51850.xlsx");
|
||||
XSSFSheet sh1 = wb.getSheetAt(0);
|
||||
XSSFSheet sh2 = wb.getSheetAt(1);
|
||||
|
@ -1235,7 +1293,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
/**
|
||||
* Sheet names with a , in them
|
||||
*/
|
||||
public void test51963() throws Exception {
|
||||
@Test
|
||||
public void bug51963() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("51963.xlsx");
|
||||
XSSFSheet sheet = wb.getSheetAt(0);
|
||||
assertEquals("Abc,1", sheet.getSheetName());
|
||||
|
@ -1255,7 +1314,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* eg =SUM($Sheet1.C1:$Sheet4.C1)
|
||||
* DISABLED As we can't currently evaluate these
|
||||
*/
|
||||
public void DISABLEDtest48703() throws Exception {
|
||||
@Ignore
|
||||
public void bug48703() throws Exception {
|
||||
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("48703.xlsx");
|
||||
XSSFSheet sheet = wb.getSheetAt(0);
|
||||
|
||||
|
@ -1265,10 +1325,10 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
XSSFCell c1 = r1.getCell(1);
|
||||
XSSFCell c2 = r2.getCell(1);
|
||||
|
||||
assertEquals(20.0, c1.getNumericCellValue());
|
||||
assertEquals(20.0, c1.getNumericCellValue(), 0);
|
||||
assertEquals("SUM(Sheet1!C1,Sheet2!C1,Sheet3!C1,Sheet4!C1)", c1.getCellFormula());
|
||||
|
||||
assertEquals(20.0, c2.getNumericCellValue());
|
||||
assertEquals(20.0, c2.getNumericCellValue(), 0);
|
||||
assertEquals("SUM(Sheet1:Sheet4!C1)", c2.getCellFormula());
|
||||
|
||||
// Try evaluating both
|
||||
|
@ -1276,14 +1336,15 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
eval.evaluateFormulaCell(c1);
|
||||
eval.evaluateFormulaCell(c2);
|
||||
|
||||
assertEquals(20.0, c1.getNumericCellValue());
|
||||
assertEquals(20.0, c2.getNumericCellValue());
|
||||
assertEquals(20.0, c1.getNumericCellValue(), 0);
|
||||
assertEquals(20.0, c2.getNumericCellValue(), 0);
|
||||
}
|
||||
|
||||
/**
|
||||
* Bugzilla 51710: problems reading shared formuals from .xlsx
|
||||
*/
|
||||
public void test51710() {
|
||||
@Test
|
||||
public void bug51710() {
|
||||
Workbook wb = XSSFTestDataSamples.openSampleWorkbook("51710.xlsx");
|
||||
|
||||
final String[] columns = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N"};
|
||||
|
@ -1313,7 +1374,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
/**
|
||||
* Bug 53101:
|
||||
*/
|
||||
public void test5301(){
|
||||
@Test
|
||||
public void bug5301(){
|
||||
Workbook workbook = XSSFTestDataSamples.openSampleWorkbook("53101.xlsx");
|
||||
FormulaEvaluator evaluator =
|
||||
workbook.getCreationHelper().createFormulaEvaluator();
|
||||
|
@ -1332,7 +1394,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
assertEquals(259.0, a1Value, 0.0);
|
||||
}
|
||||
|
||||
public void test54436(){
|
||||
@Test
|
||||
public void bug54436(){
|
||||
Workbook workbook = XSSFTestDataSamples.openSampleWorkbook("54436.xlsx");
|
||||
if(!WorkbookEvaluator.getSupportedFunctionNames().contains("GETPIVOTDATA")){
|
||||
Function func = new Function() {
|
||||
|
@ -1351,7 +1414,8 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
|
|||
* error message when called via WorkbookFactory.
|
||||
* (You need to supply a password explicitly for them)
|
||||
*/
|
||||
public void test55692() throws Exception {
|
||||
@Test
|
||||
public void bug55692() throws Exception {
|
||||
InputStream inpA = POIDataSamples.getPOIFSInstance().openResourceAsStream("protect.xlsx");
|
||||
InputStream inpB = POIDataSamples.getPOIFSInstance().openResourceAsStream("protect.xlsx");
|
||||
InputStream inpC = POIDataSamples.getPOIFSInstance().openResourceAsStream("protect.xlsx");
|
||||
|
|
|
@ -22,23 +22,19 @@ import org.apache.poi.hpsf.basic.AllPOIHPSFBasicTests;
|
|||
import org.apache.poi.hssf.HSSFTests;
|
||||
import org.apache.poi.poifs.AllPOIFSTests;
|
||||
import org.apache.poi.util.AllPOIUtilTests;
|
||||
|
||||
import junit.framework.Test;
|
||||
import junit.framework.TestSuite;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.junit.runners.Suite;
|
||||
/**
|
||||
* Root Test Suite for entire POI project. (Includes all sub-packages of org.apache.poi)<br/>
|
||||
*
|
||||
* @author Josh Micich
|
||||
*/
|
||||
@RunWith(Suite.class)
|
||||
@Suite.SuiteClasses({
|
||||
TestPOIDocumentMain.class,
|
||||
AllPOIDDFTests.class,
|
||||
AllPOIHPSFBasicTests.class,
|
||||
HSSFTests.class,
|
||||
AllPOIFSTests.class,
|
||||
AllPOIUtilTests.class
|
||||
})
|
||||
public final class AllPOITests {
|
||||
public static Test suite() {
|
||||
TestSuite result = new TestSuite("Tests for org.apache.poi");
|
||||
result.addTestSuite(TestPOIDocumentMain.class);
|
||||
result.addTest(AllPOIDDFTests.suite());
|
||||
result.addTest(AllPOIHPSFBasicTests.suite());
|
||||
result.addTest(HSSFTests.suite());
|
||||
result.addTest(AllPOIFSTests.suite());
|
||||
result.addTest(AllPOIUtilTests.suite());
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,9 +17,6 @@
|
|||
|
||||
package org.apache.poi.hssf;
|
||||
|
||||
import junit.framework.Test;
|
||||
import junit.framework.TestSuite;
|
||||
|
||||
import org.apache.poi.hssf.eventmodel.TestEventRecordFactory;
|
||||
import org.apache.poi.hssf.eventusermodel.AllEventUserModelTests;
|
||||
import org.apache.poi.hssf.extractor.TestExcelExtractor;
|
||||
|
@ -29,26 +26,23 @@ import org.apache.poi.hssf.usermodel.AllUserModelTests;
|
|||
import org.apache.poi.hssf.util.AllHSSFUtilTests;
|
||||
import org.apache.poi.ss.formula.AllSSFormulaTests;
|
||||
import org.apache.poi.ss.util.AllSSUtilTests;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.junit.runners.Suite;
|
||||
|
||||
/**
|
||||
* Test Suite for all sub-packages of org.apache.poi.hssf<br/>
|
||||
*
|
||||
* @author Andrew C. Oliver acoliver@apache.org
|
||||
*/
|
||||
@RunWith(Suite.class)
|
||||
@Suite.SuiteClasses({
|
||||
AllEventUserModelTests.class,
|
||||
AllModelTests.class,
|
||||
AllUserModelTests.class,
|
||||
AllRecordTests.class,
|
||||
AllHSSFUtilTests.class,
|
||||
TestExcelExtractor.class,
|
||||
TestEventRecordFactory.class,
|
||||
AllSSFormulaTests.class,
|
||||
AllSSUtilTests.class
|
||||
})
|
||||
public final class HSSFTests {
|
||||
|
||||
public static Test suite() {
|
||||
TestSuite suite = new TestSuite(HSSFTests.class.getName());
|
||||
|
||||
suite.addTest(AllEventUserModelTests.suite());
|
||||
suite.addTest(AllModelTests.suite());
|
||||
suite.addTest(AllUserModelTests.suite());
|
||||
suite.addTest(AllRecordTests.suite());
|
||||
suite.addTest(AllHSSFUtilTests.suite());
|
||||
suite.addTest(new TestSuite(TestExcelExtractor.class));
|
||||
suite.addTest(new TestSuite(TestEventRecordFactory.class));
|
||||
suite.addTest(AllSSFormulaTests.suite());
|
||||
suite.addTest(AllSSUtilTests.suite());
|
||||
return suite;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,7 +19,8 @@ public class TestBiffViewer extends BaseXLSIteratingTest {
|
|||
SILENT_EXCLUDED.add("51832.xls"); // password
|
||||
SILENT_EXCLUDED.add("43493.xls"); // HSSFWorkbook cannot open it as well
|
||||
SILENT_EXCLUDED.add("password.xls");
|
||||
SILENT_EXCLUDED.add("46904.xls");
|
||||
SILENT_EXCLUDED.add("46904.xls");
|
||||
SILENT_EXCLUDED.add("xor-encryption-abc.xls"); // unsupported XOR-encryption
|
||||
};
|
||||
|
||||
@Override
|
||||
|
|
|
@ -17,66 +17,60 @@
|
|||
|
||||
package org.apache.poi.hssf.usermodel;
|
||||
|
||||
import junit.framework.Test;
|
||||
import junit.framework.TestSuite;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.junit.runners.Suite;
|
||||
|
||||
/**
|
||||
* Collects all tests for the <tt>org.apache.poi.hssf.usermodel</tt> package.
|
||||
*
|
||||
* @author Josh Micich
|
||||
*/
|
||||
@RunWith(Suite.class)
|
||||
@Suite.SuiteClasses({
|
||||
TestBug42464.class,
|
||||
TestBugs.class,
|
||||
TestCellStyle.class,
|
||||
TestCloneSheet.class,
|
||||
TestDataValidation.class,
|
||||
TestEscherGraphics.class,
|
||||
TestEscherGraphics2d.class,
|
||||
TestFontDetails.class,
|
||||
TestFormulaEvaluatorBugs.class,
|
||||
TestFormulaEvaluatorDocs.class,
|
||||
TestFormulas.class,
|
||||
TestHSSFCell.class,
|
||||
TestHSSFClientAnchor.class,
|
||||
TestHSSFComment.class,
|
||||
TestHSSFConditionalFormatting.class,
|
||||
TestHSSFDataFormat.class,
|
||||
TestHSSFDataFormatter.class,
|
||||
TestHSSFDateUtil.class,
|
||||
TestHSSFFont.class,
|
||||
TestHSSFFormulaEvaluator.class,
|
||||
TestHSSFHeaderFooter.class,
|
||||
TestHSSFHyperlink.class,
|
||||
TestHSSFName.class,
|
||||
TestHSSFOptimiser.class,
|
||||
TestHSSFPalette.class,
|
||||
TestHSSFPatriarch.class,
|
||||
TestHSSFPicture.class,
|
||||
TestHSSFPictureData.class,
|
||||
TestHSSFRichTextString.class,
|
||||
TestHSSFRow.class,
|
||||
TestHSSFSheet.class,
|
||||
TestHSSFSheetShiftRows.class,
|
||||
TestHSSFSheetUpdateArrayFormulas.class,
|
||||
TestHSSFTextbox.class,
|
||||
TestHSSFWorkbook.class,
|
||||
TestOLE2Embeding.class,
|
||||
TestPOIFSProperties.class,
|
||||
TestReadWriteChart.class,
|
||||
TestRowStyle.class,
|
||||
TestSanityChecker.class,
|
||||
TestSheetHiding.class,
|
||||
/* deliberately avoiding this one
|
||||
TestUnfixedBugs.class,*/
|
||||
TestUnicodeWorkbook.class,
|
||||
TestNonStandardWorkbookStreamNames.class,
|
||||
TestWorkbook.class
|
||||
})
|
||||
public class AllUserModelTests {
|
||||
|
||||
public static Test suite() {
|
||||
TestSuite result = new TestSuite(AllUserModelTests.class.getName());
|
||||
|
||||
result.addTestSuite(TestBug42464.class);
|
||||
result.addTestSuite(TestBugs.class);
|
||||
result.addTestSuite(TestCellStyle.class);
|
||||
result.addTestSuite(TestCloneSheet.class);
|
||||
result.addTestSuite(TestDataValidation.class);
|
||||
result.addTestSuite(TestEscherGraphics.class);
|
||||
result.addTestSuite(TestEscherGraphics2d.class);
|
||||
result.addTestSuite(TestFontDetails.class);
|
||||
result.addTestSuite(TestFormulaEvaluatorBugs.class);
|
||||
result.addTestSuite(TestFormulaEvaluatorDocs.class);
|
||||
result.addTestSuite(TestFormulas.class);
|
||||
result.addTestSuite(TestHSSFCell.class);
|
||||
result.addTestSuite(TestHSSFClientAnchor.class);
|
||||
result.addTestSuite(TestHSSFComment.class);
|
||||
result.addTestSuite(TestHSSFConditionalFormatting.class);
|
||||
result.addTestSuite(TestHSSFDataFormat.class);
|
||||
result.addTestSuite(TestHSSFDataFormatter.class);
|
||||
result.addTestSuite(TestHSSFDateUtil.class);
|
||||
result.addTestSuite(TestHSSFFont.class);
|
||||
result.addTestSuite(TestHSSFFormulaEvaluator.class);
|
||||
result.addTestSuite(TestHSSFHeaderFooter.class);
|
||||
result.addTestSuite(TestHSSFHyperlink.class);
|
||||
result.addTestSuite(TestHSSFName.class);
|
||||
result.addTestSuite(TestHSSFOptimiser.class);
|
||||
result.addTestSuite(TestHSSFPalette.class);
|
||||
result.addTestSuite(TestHSSFPatriarch.class);
|
||||
result.addTestSuite(TestHSSFPicture.class);
|
||||
result.addTestSuite(TestHSSFPictureData.class);
|
||||
result.addTestSuite(TestHSSFRichTextString.class);
|
||||
result.addTestSuite(TestHSSFRow.class);
|
||||
result.addTestSuite(TestHSSFSheet.class);
|
||||
result.addTestSuite(TestHSSFSheetShiftRows.class);
|
||||
result.addTestSuite(TestHSSFSheetUpdateArrayFormulas.class);
|
||||
result.addTestSuite(TestHSSFTextbox.class);
|
||||
result.addTestSuite(TestHSSFWorkbook.class);
|
||||
result.addTestSuite(TestOLE2Embeding.class);
|
||||
result.addTestSuite(TestPOIFSProperties.class);
|
||||
result.addTestSuite(TestReadWriteChart.class);
|
||||
result.addTestSuite(TestRowStyle.class);
|
||||
result.addTestSuite(TestSanityChecker.class);
|
||||
result.addTestSuite(TestSheetHiding.class);
|
||||
/* deliberately avoiding this one
|
||||
result.addTestSuite(TestUnfixedBugs.class);*/
|
||||
result.addTestSuite(TestUnicodeWorkbook.class);
|
||||
result.addTestSuite(TestNonStandardWorkbookStreamNames.class);
|
||||
result.addTestSuite(TestWorkbook.class);
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -17,19 +17,22 @@
|
|||
|
||||
package org.apache.poi.ss.usermodel;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
import org.apache.poi.hssf.util.PaneInformation;
|
||||
import org.apache.poi.ss.ITestDataProvider;
|
||||
import org.apache.poi.ss.SpreadsheetVersion;
|
||||
import org.apache.poi.ss.util.CellRangeAddress;
|
||||
import org.junit.Test;
|
||||
|
||||
/**
|
||||
* A base class for bugzilla issues that can be described in terms of common ss interfaces.
|
||||
*
|
||||
* @author Yegor Kozlov
|
||||
*/
|
||||
public abstract class BaseTestBugzillaIssues extends TestCase {
|
||||
public abstract class BaseTestBugzillaIssues {
|
||||
|
||||
private final ITestDataProvider _testDataProvider;
|
||||
|
||||
|
@ -43,7 +46,8 @@ public abstract class BaseTestBugzillaIssues extends TestCase {
|
|||
*
|
||||
* Also tests bug 15353 (problems with hyperlinks to Google)
|
||||
*/
|
||||
public final void test23094() {
|
||||
@Test
|
||||
public final void bug23094() {
|
||||
Workbook wb = _testDataProvider.createWorkbook();
|
||||
Sheet s = wb.createSheet();
|
||||
Row r = s.createRow(0);
|
||||
|
@ -64,7 +68,7 @@ public abstract class BaseTestBugzillaIssues extends TestCase {
|
|||
* open resulting file in Excel to check results!
|
||||
* @param num the number of strings to generate
|
||||
*/
|
||||
public void baseTest15375(int num) {
|
||||
public final void bug15375(int num) {
|
||||
Workbook wb = _testDataProvider.createWorkbook();
|
||||
Sheet sheet = wb.createSheet();
|
||||
CreationHelper factory = wb.getCreationHelper();
|
||||
|
@ -104,7 +108,8 @@ public abstract class BaseTestBugzillaIssues extends TestCase {
|
|||
/**
|
||||
* Merged regions were being removed from the parent in cloned sheets
|
||||
*/
|
||||
public final void test22720() {
|
||||
@Test
|
||||
public final void bug22720() {
|
||||
Workbook workBook = _testDataProvider.createWorkbook();
|
||||
workBook.createSheet("TEST");
|
||||
Sheet template = workBook.getSheetAt(0);
|
||||
|
@ -131,7 +136,8 @@ public abstract class BaseTestBugzillaIssues extends TestCase {
|
|||
|
||||
}
|
||||
|
||||
public final void test28031() {
|
||||
@Test
|
||||
public final void bug28031() {
|
||||
Workbook wb = _testDataProvider.createWorkbook();
|
||||
Sheet sheet = wb.createSheet();
|
||||
wb.setSheetName(0, "Sheet1");
|
||||
|
@ -153,7 +159,8 @@ public abstract class BaseTestBugzillaIssues extends TestCase {
|
|||
* that contains macros and this formula:
|
||||
* {=SUM(IF(FREQUENCY(IF(LEN(V4:V220)>0,MATCH(V4:V220,V4:V220,0),""),IF(LEN(V4:V220)>0,MATCH(V4:V220,V4:V220,0),""))>0,1))}
|
||||
*/
|
||||
public final void test21334() {
|
||||
@Test
|
||||
public final void bug21334() {
|
||||
Workbook wb = _testDataProvider.createWorkbook();
|
||||
Sheet sh = wb.createSheet();
|
||||
Cell cell = sh.createRow(0).createCell(0);
|
||||
|
@ -167,7 +174,8 @@ public abstract class BaseTestBugzillaIssues extends TestCase {
|
|||
|
||||
/** another test for the number of unique strings issue
|
||||
*test opening the resulting file in Excel*/
|
||||
public final void test22568() {
|
||||
@Test
|
||||
public final void bug22568() {
|
||||
int r=2000;int c=3;
|
||||
|
||||
Workbook wb = _testDataProvider.createWorkbook();
|
||||
|
@ -216,14 +224,16 @@ public abstract class BaseTestBugzillaIssues extends TestCase {
|
|||
/**
|
||||
* Bug 42448: Can't parse SUMPRODUCT(A!C7:A!C67, B8:B68) / B69
|
||||
*/
|
||||
public final void test42448(){
|
||||
@Test
|
||||
public final void bug42448(){
|
||||
Workbook wb = _testDataProvider.createWorkbook();
|
||||
Cell cell = wb.createSheet().createRow(0).createCell(0);
|
||||
cell.setCellFormula("SUMPRODUCT(A!C7:A!C67, B8:B68) / B69");
|
||||
assertTrue("no errors parsing formula", true);
|
||||
}
|
||||
|
||||
public final void test18800() {
|
||||
@Test
|
||||
public final void bug18800() {
|
||||
Workbook book = _testDataProvider.createWorkbook();
|
||||
book.createSheet("TEST");
|
||||
Sheet sheet = book.cloneSheet(0);
|
||||
|
@ -251,7 +261,8 @@ public abstract class BaseTestBugzillaIssues extends TestCase {
|
|||
}
|
||||
}
|
||||
|
||||
public final void testBug43093() {
|
||||
@Test
|
||||
public final void bug43093() {
|
||||
Workbook xlw = _testDataProvider.createWorkbook();
|
||||
|
||||
addNewSheetWithCellsA1toD4(xlw, 1);
|
||||
|
@ -270,7 +281,8 @@ public abstract class BaseTestBugzillaIssues extends TestCase {
|
|||
assertEquals(d, (311+312+321+322), 0.0000001);
|
||||
}
|
||||
|
||||
public final void testMaxFunctionArguments_bug46729(){
|
||||
@Test
|
||||
public final void bug46729_testMaxFunctionArguments(){
|
||||
String[] func = {"COUNT", "AVERAGE", "MAX", "MIN", "OR", "SUBTOTAL", "SKEW"};
|
||||
|
||||
SpreadsheetVersion ssVersion = _testDataProvider.getSpreadsheetVersion();
|
||||
|
@ -308,7 +320,8 @@ public abstract class BaseTestBugzillaIssues extends TestCase {
|
|||
return fmla.toString();
|
||||
}
|
||||
|
||||
public final void testAutoSize_bug506819() {
|
||||
@Test
|
||||
public final void bug506819_testAutoSize() {
|
||||
Workbook wb = _testDataProvider.createWorkbook();
|
||||
Sheet sheet = wb.createSheet("Sheet1");
|
||||
Row row = sheet.createRow(0);
|
||||
|
@ -331,7 +344,8 @@ public abstract class BaseTestBugzillaIssues extends TestCase {
|
|||
/**
|
||||
* CreateFreezePane column/row order check
|
||||
*/
|
||||
public void test49381() throws Exception {
|
||||
@Test
|
||||
public void bug49381() throws Exception {
|
||||
Workbook wb = _testDataProvider.createWorkbook();
|
||||
int colSplit = 1;
|
||||
int rowSplit = 2;
|
||||
|
|
Binary file not shown.
Loading…
Reference in New Issue