diff options
Diffstat (limited to 'src/ooxml/testcases/org/apache/poi/xssf')
10 files changed, 426 insertions, 463 deletions
diff --git a/src/ooxml/testcases/org/apache/poi/xssf/model/TestCommentsTable.java b/src/ooxml/testcases/org/apache/poi/xssf/model/TestCommentsTable.java index c37d1d8b50..a5cd76c569 100644 --- a/src/ooxml/testcases/org/apache/poi/xssf/model/TestCommentsTable.java +++ b/src/ooxml/testcases/org/apache/poi/xssf/model/TestCommentsTable.java @@ -21,6 +21,7 @@ import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileOutputStream; +import java.util.List; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Comment; @@ -31,13 +32,11 @@ import org.apache.poi.xssf.usermodel.XSSFRichTextString; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.xssf.XSSFTestDataSamples; +import org.apache.poi.POIXMLDocumentPart; import org.openxml4j.opc.Package; import org.openxml4j.opc.PackagePart; import org.openxml4j.opc.PackagingURIHelper; -import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTComment; -import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTCommentList; -import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTComments; -import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTRst; +import org.openxmlformats.schemas.spreadsheetml.x2006.main.*; import junit.framework.TestCase; @@ -48,9 +47,13 @@ public class TestCommentsTable extends TestCase { private static final String TEST_A1_TEXT = "test A1 text"; private static final String TEST_AUTHOR = "test author"; - public void testfindAuthor() { - CTComments comments = CTComments.Factory.newInstance(); - CommentsTable sheetComments = new CommentsTable(comments); + public void testfindAuthor() throws Exception { + CommentsDocument doc = CommentsDocument.Factory.newInstance(); + doc.setComments(CTComments.Factory.newInstance()); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + doc.save(out, POIXMLDocumentPart.DEFAULT_XML_OPTIONS); + CommentsTable sheetComments = new CommentsTable(); + sheetComments.readFrom(new ByteArrayInputStream(out.toByteArray())); assertEquals(0, sheetComments.findAuthor(TEST_AUTHOR)); assertEquals(1, sheetComments.findAuthor("another author")); @@ -59,9 +62,16 @@ public class TestCommentsTable extends TestCase { assertEquals(1, sheetComments.findAuthor("another author")); } - public void testGetCellComment() { - CTComments comments = CTComments.Factory.newInstance(); - CommentsTable sheetComments = new CommentsTable(comments); + public void testGetCellComment() throws Exception { + CommentsDocument doc = CommentsDocument.Factory.newInstance(); + doc.setComments(CTComments.Factory.newInstance()); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + doc.save(out, POIXMLDocumentPart.DEFAULT_XML_OPTIONS); + CommentsTable sheetComments = new CommentsTable(); + sheetComments.readFrom(new ByteArrayInputStream(out.toByteArray())); + + + CTComments comments = sheetComments.getCTComments(); CTCommentList commentList = comments.addNewCommentList(); // Create 2 comments for A1 and A" cells @@ -85,10 +95,15 @@ public class TestCommentsTable extends TestCase { assertNull(sheetComments.findCellComment(2, 0)); } - public void testAddCellComment() { - CTComments comments = CTComments.Factory.newInstance(); - CommentsTable sheetComments = new CommentsTable(comments); - CTCommentList commentList = comments.addNewCommentList(); + public void testAddCellComment() throws Exception { + CommentsDocument doc = CommentsDocument.Factory.newInstance(); + doc.setComments(CTComments.Factory.newInstance()); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + doc.save(out, POIXMLDocumentPart.DEFAULT_XML_OPTIONS); + CommentsTable sheetComments = new CommentsTable(); + sheetComments.readFrom(new ByteArrayInputStream(out.toByteArray())); + + CTCommentList commentList = sheetComments.getCTComments().addNewCommentList(); assertEquals(0, commentList.sizeOfCommentArray()); XSSFComment comment = sheetComments.addComment(); @@ -114,11 +129,16 @@ public class TestCommentsTable extends TestCase { assertTrue(xml.exists()); Package pkg = Package.open(xml.toString()); - PackagePart cpart = pkg.getPart( - PackagingURIHelper.createPartName("/xl/comments1.xml") - ); - - CommentsTable ct = new CommentsTable(cpart.getInputStream()); + XSSFWorkbook wb = new XSSFWorkbook(pkg); + List<POIXMLDocumentPart> rels = wb.getSheetAt(0).getRelations(); + CommentsTable ct = null; + for(POIXMLDocumentPart p : rels) { + if(p instanceof CommentsTable){ + ct = (CommentsTable)p; + break; + } + } + assertNotNull(ct); assertEquals(2, ct.getNumberOfComments()); assertEquals(1, ct.getNumberOfAuthors()); @@ -126,13 +146,18 @@ public class TestCommentsTable extends TestCase { assertEquals("Nick Burch", comment.getAuthor()); assertEquals("Nick Burch:\nThis is a comment", comment.getString().getString()); - - // Re-serialise - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - ct.writeTo(baos); - ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); - ct = new CommentsTable(bais); - + + wb = XSSFTestDataSamples.writeOutAndReadBack(wb); + rels = wb.getSheetAt(0).getRelations(); + ct = null; + for(POIXMLDocumentPart p : rels) { + if(p instanceof CommentsTable){ + ct = (CommentsTable)p; + break; + } + } + assertNotNull(ct); + assertEquals(2, ct.getNumberOfComments()); assertEquals(1, ct.getNumberOfAuthors()); @@ -140,9 +165,7 @@ public class TestCommentsTable extends TestCase { assertEquals("Nick Burch", comment.getAuthor()); - // TODO: Fix this! - // New line should still be there, but isn't! - //assertEquals("Nick Burch:\nThis is a comment", comment.getString().getString()); + assertEquals("Nick Burch:\nThis is a comment", comment.getString().getString()); } public void testExisting() throws Exception { diff --git a/src/ooxml/testcases/org/apache/poi/xssf/model/TestSharedStringsTable.java b/src/ooxml/testcases/org/apache/poi/xssf/model/TestSharedStringsTable.java index 838a0fbbfa..a5bcaf48e4 100755 --- a/src/ooxml/testcases/org/apache/poi/xssf/model/TestSharedStringsTable.java +++ b/src/ooxml/testcases/org/apache/poi/xssf/model/TestSharedStringsTable.java @@ -111,17 +111,11 @@ public final class TestSharedStringsTable extends TestCase { public void testReadWrite() {
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("sample.xlsx");
- SharedStringsTable sst1 = (SharedStringsTable)wb.getSharedStringSource();
+ SharedStringsTable sst1 = wb.getSharedStringSource();
//serialize, read back and compare with the original
- SharedStringsTable sst2;
- try {
- ByteArrayOutputStream out = new ByteArrayOutputStream();
- sst1.writeTo(out);
- sst2 = new SharedStringsTable(new ByteArrayInputStream(out.toByteArray()));
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
+ SharedStringsTable sst2 = XSSFTestDataSamples.writeOutAndReadBack(wb).getSharedStringSource();
+
assertEquals(sst1.getCount(), sst2.getCount());
assertEquals(sst1.getUniqueCount(), sst2.getUniqueCount());
diff --git a/src/ooxml/testcases/org/apache/poi/xssf/model/TestStylesTable.java b/src/ooxml/testcases/org/apache/poi/xssf/model/TestStylesTable.java index edb051520b..26ce623d24 100644 --- a/src/ooxml/testcases/org/apache/poi/xssf/model/TestStylesTable.java +++ b/src/ooxml/testcases/org/apache/poi/xssf/model/TestStylesTable.java @@ -20,11 +20,10 @@ package org.apache.poi.xssf.model; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; -import java.io.IOException; import org.apache.poi.xssf.usermodel.XSSFCellStyle; import org.apache.poi.xssf.usermodel.XSSFWorkbook; -import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTXf; +import org.apache.poi.xssf.XSSFTestDataSamples; import junit.framework.TestCase; @@ -50,19 +49,17 @@ public class TestStylesTable extends TestCase { } public void testCreateSaveLoad() throws Exception { - StylesTable st = new StylesTable(); - + XSSFWorkbook wb = new XSSFWorkbook(); + StylesTable st = wb.getStylesSource(); + assertNotNull(st._getRawStylesheet()); assertEquals(1, st._getXfsSize()); assertEquals(1, st._getStyleXfsSize()); assertEquals(0, st._getNumberFormatSize()); - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - st.writeTo(baos); - ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); - st = new StylesTable(bais); - - assertNotNull(st._getRawStylesheet()); + st = XSSFTestDataSamples.writeOutAndReadBack(wb).getStylesSource(); + + assertNotNull(st._getRawStylesheet()); assertEquals(1, st._getXfsSize()); assertEquals(1, st._getStyleXfsSize()); assertEquals(0, st._getNumberFormatSize()); @@ -72,7 +69,7 @@ public class TestStylesTable extends TestCase { XSSFWorkbook workbook = new XSSFWorkbook(xml.toString()); assertNotNull(workbook.getStylesSource()); - StylesTable st = (StylesTable)workbook.getStylesSource(); + StylesTable st = workbook.getStylesSource(); doTestExisting(st); } @@ -80,13 +77,10 @@ public class TestStylesTable extends TestCase { XSSFWorkbook workbook = new XSSFWorkbook(xml.toString()); assertNotNull(workbook.getStylesSource()); - StylesTable st = (StylesTable)workbook.getStylesSource(); + StylesTable st = workbook.getStylesSource(); doTestExisting(st); - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - st.writeTo(baos); - ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); - st = new StylesTable(bais); + st = XSSFTestDataSamples.writeOutAndReadBack(workbook).getStylesSource(); doTestExisting(st); } public void doTestExisting(StylesTable st) throws Exception { @@ -116,7 +110,8 @@ public class TestStylesTable extends TestCase { } public void testPopulateNew() throws Exception { - StylesTable st = new StylesTable(); + XSSFWorkbook wb = new XSSFWorkbook(); + StylesTable st = wb.getStylesSource(); assertNotNull(st._getRawStylesheet()); assertEquals(1, st._getXfsSize()); @@ -130,11 +125,8 @@ public class TestStylesTable extends TestCase { st.putStyle(new XSSFCellStyle(st)); // Save and re-load - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - st.writeTo(baos); - ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); - st = new StylesTable(bais); - + st = XSSFTestDataSamples.writeOutAndReadBack(wb).getStylesSource(); + assertNotNull(st._getRawStylesheet()); assertEquals(2, st._getXfsSize()); assertEquals(1, st._getStyleXfsSize()); @@ -149,7 +141,7 @@ public class TestStylesTable extends TestCase { XSSFWorkbook workbook = new XSSFWorkbook(xml.toString()); assertNotNull(workbook.getStylesSource()); - StylesTable st = (StylesTable)workbook.getStylesSource(); + StylesTable st = workbook.getStylesSource(); assertEquals(11, st._getXfsSize()); assertEquals(1, st._getStyleXfsSize()); assertEquals(8, st._getNumberFormatSize()); @@ -158,11 +150,8 @@ public class TestStylesTable extends TestCase { long nf2 = st.putNumberFormat("YYYY-mm-DD"); assertEquals(nf1, st.putNumberFormat("YYYY-mm-dd")); - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - st.writeTo(baos); - ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); - st = new StylesTable(bais); - + st = XSSFTestDataSamples.writeOutAndReadBack(workbook).getStylesSource(); + assertEquals(11, st._getXfsSize()); assertEquals(1, st._getStyleXfsSize()); assertEquals(10, st._getNumberFormatSize()); diff --git a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFCell.java b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFCell.java index 39dc9a1636..f5d623c0fe 100644 --- a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFCell.java +++ b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFCell.java @@ -59,7 +59,7 @@ public final class TestXSSFCell extends TestCase { */ public void testSetGetBoolean() throws Exception { XSSFRow row = createParentObjects(); - XSSFCell cell = new XSSFCell(row); + XSSFCell cell = row.createCell(0); cell.setCellValue(true); assertEquals(Cell.CELL_TYPE_BOOLEAN, cell.getCellType()); assertTrue(cell.getBooleanCellValue()); @@ -79,7 +79,7 @@ public final class TestXSSFCell extends TestCase { */ public void testSetGetNumeric() throws Exception { XSSFRow row = createParentObjects(); - XSSFCell cell = new XSSFCell(row); + XSSFCell cell = row.createCell(0); cell.setCellValue(10d); assertEquals(Cell.CELL_TYPE_NUMERIC, cell.getCellType()); assertEquals(10d, cell.getNumericCellValue()); @@ -92,7 +92,7 @@ public final class TestXSSFCell extends TestCase { */ public void testSetGetDate() throws Exception { XSSFRow row = createParentObjects(); - XSSFCell cell = new XSSFCell(row); + XSSFCell cell = row.createCell(0); Date now = new Date(); cell.setCellValue(now); assertEquals(Cell.CELL_TYPE_NUMERIC, cell.getCellType()); @@ -120,7 +120,7 @@ public final class TestXSSFCell extends TestCase { public void testSetGetError() throws Exception { XSSFRow row = createParentObjects(); - XSSFCell cell = new XSSFCell(row); + XSSFCell cell = row.createCell(0); cell.setCellErrorValue((byte)0); assertEquals(Cell.CELL_TYPE_ERROR, cell.getCellType()); @@ -137,7 +137,7 @@ public final class TestXSSFCell extends TestCase { public void testSetGetFormula() throws Exception { XSSFRow row = createParentObjects(); - XSSFCell cell = new XSSFCell(row); + XSSFCell cell = row.createCell(0); String formula = "SQRT(C2^2+D2^2)"; cell.setCellFormula(formula); @@ -174,7 +174,7 @@ public final class TestXSSFCell extends TestCase { public void testSetGetStringShared() { XSSFRow row = createParentObjects(); - XSSFCell cell = new XSSFCell(row); + XSSFCell cell = row.createCell(0); cell.setCellValue(new XSSFRichTextString("")); assertEquals(Cell.CELL_TYPE_STRING, cell.getCellType()); @@ -190,7 +190,7 @@ public final class TestXSSFCell extends TestCase { */ public void testGetEmptyCellValue() { XSSFRow row = createParentObjects(); - XSSFCell cell = new XSSFCell(row); + XSSFCell cell = row.createCell(0); cell.setCellType(Cell.CELL_TYPE_BOOLEAN); assertFalse(cell.getBooleanCellValue()); cell.setCellType(Cell.CELL_TYPE_NUMERIC); @@ -214,7 +214,7 @@ public final class TestXSSFCell extends TestCase { public void testFormatPosition() { XSSFRow row = createParentObjects(); row.setRowNum(0); - XSSFCell cell = new XSSFCell(row); + XSSFCell cell = row.createCell(0); cell.setCellNum((short) 0); assertEquals("A1", cell.formatPosition()); cell.setCellNum((short) 25); @@ -227,41 +227,20 @@ public final class TestXSSFCell extends TestCase { assertEquals("IV32768", cell.formatPosition()); } - public static class DummySharedStringSource implements SharedStringSource { - ArrayList<CTRst> strs = new ArrayList<CTRst>(); - public CTRst getEntryAt(int idx) { - return strs.get(idx); - } - - public synchronized int addEntry(CTRst s) { - if(strs.contains(s)) { - return strs.indexOf(s); - } - strs.add(s); - return strs.size() - 1; - } - } - public void testGetCellComment() { XSSFWorkbook workbook = new XSSFWorkbook(); - CTSheet ctSheet = CTSheet.Factory.newInstance(); - CTWorksheet ctWorksheet = CTWorksheet.Factory.newInstance(); - CTComments ctComments = CTComments.Factory.newInstance(); - CommentsTable sheetComments = new CommentsTable(ctComments); - XSSFSheet sheet = new XSSFSheet(ctSheet, ctWorksheet, workbook, sheetComments); + XSSFSheet sheet = workbook.createSheet(); assertNotNull(sheet); - + + XSSFComment comment = sheet.createComment(); + comment.setAuthor(TEST_C10_AUTHOR); + sheet.setCellComment("C10", comment); + // Create C10 cell Row row = sheet.createRow(9); row.createCell(2); row.createCell(3); - - // Set a comment for C10 cell - CTComment ctComment = ctComments.addNewCommentList().insertNewComment(0); - ctComment.setRef("C10"); - ctComment.setAuthorId(sheetComments.findAuthor(TEST_C10_AUTHOR)); - assertNotNull(sheet.getRow(9).getCell((short)2)); assertNotNull(sheet.getRow(9).getCell((short)2).getCellComment()); assertEquals(TEST_C10_AUTHOR, sheet.getRow(9).getCell((short)2).getCellComment().getAuthor()); @@ -270,41 +249,35 @@ public final class TestXSSFCell extends TestCase { public void testSetCellComment() { XSSFWorkbook workbook = new XSSFWorkbook(); - CTSheet ctSheet = CTSheet.Factory.newInstance(); - CTWorksheet ctWorksheet = CTWorksheet.Factory.newInstance(); - CTComments ctComments = CTComments.Factory.newInstance(); - CommentsTable comments = new CommentsTable(ctComments); - XSSFSheet sheet = new XSSFSheet(ctSheet, ctWorksheet, workbook, comments); + XSSFSheet sheet = workbook.createSheet(); assertNotNull(sheet); - + + XSSFComment comment = sheet.createComment(); + comment.setAuthor(TEST_C10_AUTHOR); + + CTWorksheet ctWorksheet = sheet.getWorksheet(); + // Create C10 cell Row row = sheet.createRow(9); Cell cell = row.createCell(2); row.createCell(3); - - // Create a comment - Comment comment = comments.addComment(); - comment.setAuthor(TEST_C10_AUTHOR); - + // Set a comment for C10 cell cell.setCellComment(comment); CTCell ctCell = ctWorksheet.getSheetData().getRowArray(0).getCArray(0); assertNotNull(ctCell); assertEquals("C10", ctCell.getR()); - long authorId = ctComments.getCommentList().getCommentArray(0).getAuthorId(); - assertEquals(TEST_C10_AUTHOR, comments.getAuthor(authorId)); + assertEquals(TEST_C10_AUTHOR, comment.getAuthor()); } public void testSetAsActiveCell() { - Workbook workbook = new XSSFWorkbook(); - CTSheet ctSheet = CTSheet.Factory.newInstance(); - CTWorksheet ctWorksheet = CTWorksheet.Factory.newInstance(); - XSSFSheet sheet = new XSSFSheet(ctSheet, ctWorksheet, (XSSFWorkbook) workbook); + XSSFWorkbook workbook = new XSSFWorkbook(); + XSSFSheet sheet = workbook.createSheet(); Cell cell = sheet.createRow(0).createCell((short)0); cell.setAsActiveCell(); - assertEquals("A1", ctWorksheet.getSheetViews().getSheetViewArray(0).getSelectionArray(0).getActiveCell()); + assertEquals("A1", sheet.getWorksheet().getSheetViews().getSheetViewArray(0).getSelectionArray(0).getActiveCell()); } @@ -345,9 +318,8 @@ public final class TestXSSFCell extends TestCase { private static XSSFRow createParentObjects() { XSSFWorkbook wb = new XSSFWorkbook(); - wb.setSharedStringSource(new SharedStringsTable()); - XSSFSheet sheet = new XSSFSheet(wb); - XSSFRow row = new XSSFRow(sheet); + XSSFSheet sheet = wb.createSheet(); + XSSFRow row = sheet.createRow(0); return row; } diff --git a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFComment.java b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFComment.java index c2ddb01bae..7cf6e4a846 100644 --- a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFComment.java +++ b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFComment.java @@ -25,155 +25,164 @@ import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.util.CellReference; import org.apache.poi.xssf.model.CommentsTable; import org.apache.poi.xssf.XSSFTestDataSamples; -import org.openxml4j.opc.Package; +import org.apache.poi.POIXMLDocumentPart; import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTAuthors; import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTComment; import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTComments; +import org.openxmlformats.schemas.spreadsheetml.x2006.main.CommentsDocument; import junit.framework.TestCase; +import java.io.ByteArrayOutputStream; +import java.io.ByteArrayInputStream; + public class TestXSSFComment extends TestCase { - - private static final String TEST_RICHTEXTSTRING = "test richtextstring"; - private static final String TEST_AUTHOR = "test_author"; - - public void testConstructors() { - CommentsTable sheetComments = new CommentsTable(); - XSSFComment comment = sheetComments.addComment(); - assertNotNull(comment); - - CTComment ctComment = CTComment.Factory.newInstance(); - XSSFComment comment2 = new XSSFComment(sheetComments, ctComment); - assertNotNull(comment2); - } - - public void testGetColumn() { - CommentsTable sheetComments = new CommentsTable(); - CTComment ctComment = CTComment.Factory.newInstance(); - ctComment.setRef("A1"); - XSSFComment comment = new XSSFComment(sheetComments, ctComment); - assertNotNull(comment); - assertEquals(0, comment.getColumn()); - ctComment.setRef("C10"); - assertEquals(2, comment.getColumn()); - } - - public void testGetRow() { - CommentsTable sheetComments = new CommentsTable(); - CTComment ctComment = CTComment.Factory.newInstance(); - ctComment.setRef("A1"); - XSSFComment comment = new XSSFComment(sheetComments, ctComment); - assertNotNull(comment); - assertEquals(0, comment.getRow()); - ctComment.setRef("C10"); - assertEquals(9, comment.getRow()); - } - - public void testGetAuthor() { - CTComments ctComments = CTComments.Factory.newInstance(); - CTComment ctComment = ctComments.addNewCommentList().addNewComment(); - CTAuthors ctAuthors = ctComments.addNewAuthors(); - ctAuthors.insertAuthor(0, TEST_AUTHOR); - ctComment.setAuthorId(0); - - CommentsTable sheetComments = new CommentsTable(ctComments); - XSSFComment comment = new XSSFComment(sheetComments, ctComment); - assertNotNull(comment); - assertEquals(TEST_AUTHOR, comment.getAuthor()); - } - - public void testSetColumn() { - CommentsTable sheetComments = new CommentsTable(); - CTComment ctComment = CTComment.Factory.newInstance(); - XSSFComment comment = new XSSFComment(sheetComments, ctComment); - comment.setColumn((short)3); - assertEquals(3, comment.getColumn()); - assertEquals(3, (new CellReference(ctComment.getRef()).getCol())); - assertEquals("D1", ctComment.getRef()); - - comment.setColumn((short)13); - assertEquals(13, comment.getColumn()); - } - - public void testSetRow() { - CommentsTable sheetComments = new CommentsTable(); - CTComment ctComment = CTComment.Factory.newInstance(); - XSSFComment comment = new XSSFComment(sheetComments, ctComment); - comment.setRow(20); - assertEquals(20, comment.getRow()); - assertEquals(20, (new CellReference(ctComment.getRef()).getRow())); - assertEquals("A21", ctComment.getRef()); - - comment.setRow(19); - assertEquals(19, comment.getRow()); - } - - public void testSetAuthor() { - CommentsTable sheetComments = new CommentsTable(); - CTComment ctComment = CTComment.Factory.newInstance(); - XSSFComment comment = new XSSFComment(sheetComments, ctComment); - comment.setAuthor(TEST_AUTHOR); - assertEquals(TEST_AUTHOR, comment.getAuthor()); - } - - public void testSetString() { - CommentsTable sheetComments = new CommentsTable(); - CTComment ctComment = CTComment.Factory.newInstance(); - XSSFComment comment = new XSSFComment(sheetComments, ctComment); - RichTextString richTextString = new HSSFRichTextString(TEST_RICHTEXTSTRING); - comment.setString(richTextString); - assertEquals(TEST_RICHTEXTSTRING, ctComment.getText().getT()); - } - - /** - * Tests that we can add comments to a new - * file, save, load, and still see them - * @throws Exception - */ - public void testCreateSave() throws Exception { - XSSFWorkbook wb = new XSSFWorkbook(); - XSSFSheet s1 = wb.createSheet(); - Row r1 = s1.createRow(0); - Cell r1c1 = r1.createCell(0); - r1c1.setCellValue(2.2); - - assertEquals(0, s1.getNumberOfComments()); - - Comment c1 = s1.createComment(); - c1.setAuthor("Author 1"); - c1.setString(new XSSFRichTextString("Comment 1")); - r1c1.setCellComment(c1); - - assertEquals(1, s1.getNumberOfComments()); - - // Save and re-load - wb = XSSFTestDataSamples.writeOutAndReadBack(wb); - s1 = wb.getSheetAt(0); - - assertEquals(1, s1.getNumberOfComments()); - assertNotNull(s1.getRow(0).getCell(0).getCellComment()); - assertEquals("Author 1", s1.getRow(0).getCell(0).getCellComment().getAuthor()); - assertEquals("Comment 1", s1.getRow(0).getCell(0).getCellComment().getString().getString()); - - // Now add an orphaned one - Comment c2 = s1.createComment(); - c2.setAuthor("Author 2"); - c2.setString(new XSSFRichTextString("Second Comment")); - c2.setRow(0); - c2.setColumn((short)1); - assertEquals(2, s1.getNumberOfComments()); - - // Save and re-load - - wb = XSSFTestDataSamples.writeOutAndReadBack(wb); - s1 = wb.getSheetAt(0); - - assertEquals(2, s1.getNumberOfComments()); - assertNotNull(s1.getCellComment(0, 0)); - assertNotNull(s1.getCellComment(0, 1)); - - assertEquals("Author 1", s1.getCellComment(0, 0).getAuthor()); - assertEquals("Author 2", s1.getCellComment(0, 1).getAuthor()); - } + + private static final String TEST_RICHTEXTSTRING = "test richtextstring"; + private static final String TEST_AUTHOR = "test_author"; + + public void testConstructors() { + CommentsTable sheetComments = new CommentsTable(); + XSSFComment comment = sheetComments.addComment(); + assertNotNull(comment); + + CTComment ctComment = CTComment.Factory.newInstance(); + XSSFComment comment2 = new XSSFComment(sheetComments, ctComment); + assertNotNull(comment2); + } + + public void testGetColumn() { + CommentsTable sheetComments = new CommentsTable(); + CTComment ctComment = CTComment.Factory.newInstance(); + ctComment.setRef("A1"); + XSSFComment comment = new XSSFComment(sheetComments, ctComment); + assertNotNull(comment); + assertEquals(0, comment.getColumn()); + ctComment.setRef("C10"); + assertEquals(2, comment.getColumn()); + } + + public void testGetRow() { + CommentsTable sheetComments = new CommentsTable(); + CTComment ctComment = CTComment.Factory.newInstance(); + ctComment.setRef("A1"); + XSSFComment comment = new XSSFComment(sheetComments, ctComment); + assertNotNull(comment); + assertEquals(0, comment.getRow()); + ctComment.setRef("C10"); + assertEquals(9, comment.getRow()); + } + + public void testGetAuthor() throws Exception { + CommentsDocument doc = CommentsDocument.Factory.newInstance(); + CTComments ctComments = CTComments.Factory.newInstance(); + CTComment ctComment = ctComments.addNewCommentList().addNewComment(); + CTAuthors ctAuthors = ctComments.addNewAuthors(); + ctAuthors.insertAuthor(0, TEST_AUTHOR); + ctComment.setAuthorId(0); + doc.setComments(ctComments); + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + doc.save(out, POIXMLDocumentPart.DEFAULT_XML_OPTIONS); + + CommentsTable sheetComments = new CommentsTable(); + sheetComments.readFrom(new ByteArrayInputStream(out.toByteArray())); + XSSFComment comment = new XSSFComment(sheetComments, ctComment); + assertEquals(TEST_AUTHOR, comment.getAuthor()); + } + + public void testSetColumn() { + CommentsTable sheetComments = new CommentsTable(); + CTComment ctComment = CTComment.Factory.newInstance(); + XSSFComment comment = new XSSFComment(sheetComments, ctComment); + comment.setColumn((short)3); + assertEquals(3, comment.getColumn()); + assertEquals(3, (new CellReference(ctComment.getRef()).getCol())); + assertEquals("D1", ctComment.getRef()); + + comment.setColumn((short)13); + assertEquals(13, comment.getColumn()); + } + + public void testSetRow() { + CommentsTable sheetComments = new CommentsTable(); + CTComment ctComment = CTComment.Factory.newInstance(); + XSSFComment comment = new XSSFComment(sheetComments, ctComment); + comment.setRow(20); + assertEquals(20, comment.getRow()); + assertEquals(20, (new CellReference(ctComment.getRef()).getRow())); + assertEquals("A21", ctComment.getRef()); + + comment.setRow(19); + assertEquals(19, comment.getRow()); + } + + public void testSetAuthor() { + CommentsTable sheetComments = new CommentsTable(); + CTComment ctComment = CTComment.Factory.newInstance(); + XSSFComment comment = new XSSFComment(sheetComments, ctComment); + comment.setAuthor(TEST_AUTHOR); + assertEquals(TEST_AUTHOR, comment.getAuthor()); + } + + public void testSetString() { + CommentsTable sheetComments = new CommentsTable(); + CTComment ctComment = CTComment.Factory.newInstance(); + XSSFComment comment = new XSSFComment(sheetComments, ctComment); + RichTextString richTextString = new HSSFRichTextString(TEST_RICHTEXTSTRING); + comment.setString(richTextString); + assertEquals(TEST_RICHTEXTSTRING, ctComment.getText().getT()); + } + + /** + * Tests that we can add comments to a new + * file, save, load, and still see them + * @throws Exception + */ + public void testCreateSave() throws Exception { + XSSFWorkbook wb = new XSSFWorkbook(); + XSSFSheet s1 = wb.createSheet(); + Row r1 = s1.createRow(0); + Cell r1c1 = r1.createCell(0); + r1c1.setCellValue(2.2); + + assertEquals(0, s1.getNumberOfComments()); + + Comment c1 = s1.createComment(); + c1.setAuthor("Author 1"); + c1.setString(new XSSFRichTextString("Comment 1")); + r1c1.setCellComment(c1); + + assertEquals(1, s1.getNumberOfComments()); + + // Save and re-load + wb = XSSFTestDataSamples.writeOutAndReadBack(wb); + s1 = wb.getSheetAt(0); + + assertEquals(1, s1.getNumberOfComments()); + assertNotNull(s1.getRow(0).getCell(0).getCellComment()); + assertEquals("Author 1", s1.getRow(0).getCell(0).getCellComment().getAuthor()); + assertEquals("Comment 1", s1.getRow(0).getCell(0).getCellComment().getString().getString()); + + // Now add an orphaned one + Comment c2 = s1.createComment(); + c2.setAuthor("Author 2"); + c2.setString(new XSSFRichTextString("Second Comment")); + c2.setRow(0); + c2.setColumn((short)1); + assertEquals(2, s1.getNumberOfComments()); + + // Save and re-load + + wb = XSSFTestDataSamples.writeOutAndReadBack(wb); + s1 = wb.getSheetAt(0); + + assertEquals(2, s1.getNumberOfComments()); + assertNotNull(s1.getCellComment(0, 0)); + assertNotNull(s1.getCellComment(0, 1)); + + assertEquals("Author 1", s1.getCellComment(0, 0).getAuthor()); + assertEquals("Author 2", s1.getCellComment(0, 1).getAuthor()); + } } diff --git a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFDialogSheet.java b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFDialogSheet.java index 1d39d25e4e..663cc5a4aa 100644 --- a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFDialogSheet.java +++ b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFDialogSheet.java @@ -27,15 +27,7 @@ import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTSheet; public class TestXSSFDialogSheet extends TestCase { - public void testDialogsheetConstructor() { - XSSFWorkbook workbook = new XSSFWorkbook(); - Sheet sheet = workbook.createSheet("Sheet 1"); - XSSFDialogsheet dialogsheet = new XSSFDialogsheet(CTSheet.Factory.newInstance(), CTDialogsheet.Factory.newInstance(), workbook); - assertNotNull(dialogsheet); - XSSFDialogsheet dialogsheet2 = new XSSFDialogsheet(CTSheet.Factory.newInstance(), null, workbook); - assertNotNull(dialogsheet2); - } - + public void testCreateDialogSheet() { XSSFWorkbook workbook = new XSSFWorkbook(); Sheet dialogsheet = workbook.createDialogsheet("Dialogsheet 1", CTDialogsheet.Factory.newInstance()); diff --git a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java index 6bd21fdf5a..0561dbc105 100755 --- a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java +++ b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java @@ -19,191 +19,188 @@ package org.apache.poi.xssf.usermodel; import junit.framework.TestCase; -import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTPageMargins; -import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTPageSetup; -import org.openxmlformats.schemas.spreadsheetml.x2006.main.STCellComments; -import org.openxmlformats.schemas.spreadsheetml.x2006.main.STOrientation; -import org.openxmlformats.schemas.spreadsheetml.x2006.main.STPageOrder; +import org.openxmlformats.schemas.spreadsheetml.x2006.main.*; /** * Tests for {@link XSSFPrintSetup} - * */ public class TestXSSFPrintSetup extends TestCase { - public void testConstructor(){ - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - CTPageMargins pMargins=CTPageMargins.Factory.newInstance(); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, pMargins); - assertNotNull(printSetup); - - XSSFWorkbook wb=new XSSFWorkbook(); - printSetup=new XSSFPrintSetup(wb.createSheet()); - assertNotNull(printSetup); - } - public void testSetGetPaperSize() { - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - pSetup.setPaperSize(9); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, null); - assertEquals(PaperSize.A4_PAPER,printSetup.getPaperSizeEnum()); - assertEquals(9,printSetup.getPaperSize()); - - printSetup.setPaperSize(PaperSize.A3_PAPER); - assertEquals(8,pSetup.getPaperSize()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageSetup pSetup = worksheet.addNewPageSetup(); + pSetup.setPaperSize(9); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(PaperSize.A4_PAPER, printSetup.getPaperSizeEnum()); + assertEquals(9, printSetup.getPaperSize()); + + printSetup.setPaperSize(PaperSize.A3_PAPER); + assertEquals(8, pSetup.getPaperSize()); } public void testSetGetScale() { - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - pSetup.setScale(9); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, null); - assertEquals(9,printSetup.getScale()); - - printSetup.setScale((short)100); - assertEquals(100,pSetup.getScale()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageSetup pSetup = worksheet.addNewPageSetup(); + pSetup.setScale(9); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(9, printSetup.getScale()); + + printSetup.setScale((short) 100); + assertEquals(100, pSetup.getScale()); } public void testSetGetPageStart() { - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - pSetup.setFirstPageNumber(9); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, null); - assertEquals(9,printSetup.getPageStart()); - - printSetup.setPageStart((short)1); - assertEquals(1,pSetup.getFirstPageNumber()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageSetup pSetup = worksheet.addNewPageSetup(); + pSetup.setFirstPageNumber(9); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(9, printSetup.getPageStart()); + + printSetup.setPageStart((short) 1); + assertEquals(1, pSetup.getFirstPageNumber()); } public void testSetGetFitWidthHeight() { - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - pSetup.setFitToWidth(50); - pSetup.setFitToHeight(99); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, null); - assertEquals(50,printSetup.getFitWidth()); - assertEquals(99,printSetup.getFitHeight()); - - printSetup.setFitWidth((short)66); - printSetup.setFitHeight((short)80); - assertEquals(66,pSetup.getFitToWidth()); - assertEquals(80,pSetup.getFitToHeight()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageSetup pSetup = worksheet.addNewPageSetup(); + pSetup.setFitToWidth(50); + pSetup.setFitToHeight(99); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(50, printSetup.getFitWidth()); + assertEquals(99, printSetup.getFitHeight()); + + printSetup.setFitWidth((short) 66); + printSetup.setFitHeight((short) 80); + assertEquals(66, pSetup.getFitToWidth()); + assertEquals(80, pSetup.getFitToHeight()); } public void testSetGetLeftToRight() { - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - pSetup.setPageOrder(STPageOrder.DOWN_THEN_OVER); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, null); - assertEquals(false,printSetup.getLeftToRight()); - - printSetup.setLeftToRight(true); - assertEquals(PageOrder.OVER_THEN_DOWN.getValue(),pSetup.getPageOrder()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageSetup pSetup = worksheet.addNewPageSetup(); + pSetup.setPageOrder(STPageOrder.DOWN_THEN_OVER); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(false, printSetup.getLeftToRight()); + + printSetup.setLeftToRight(true); + assertEquals(PageOrder.OVER_THEN_DOWN.getValue(), pSetup.getPageOrder().intValue()); } public void testSetGetOrientation() { - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - pSetup.setOrientation(STOrientation.PORTRAIT); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, null); - assertEquals(PrintOrientation.PORTRAIT,printSetup.getOrientation()); - assertEquals(false,printSetup.getLandscape()); - assertEquals(false,printSetup.getNoOrientation()); - - printSetup.setOrientation(PrintOrientation.LANDSCAPE); - assertEquals(pSetup.getOrientation(),printSetup.getOrientation().getValue()); - assertEquals(true,printSetup.getLandscape()); - assertEquals(false,printSetup.getNoOrientation()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageSetup pSetup = worksheet.addNewPageSetup(); + pSetup.setOrientation(STOrientation.PORTRAIT); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(PrintOrientation.PORTRAIT, printSetup.getOrientation()); + assertEquals(false, printSetup.getLandscape()); + assertEquals(false, printSetup.getNoOrientation()); + + printSetup.setOrientation(PrintOrientation.LANDSCAPE); + assertEquals(pSetup.getOrientation().intValue(), printSetup.getOrientation().getValue()); + assertEquals(true, printSetup.getLandscape()); + assertEquals(false, printSetup.getNoOrientation()); } public void testSetGetValidSettings() { - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - pSetup.setUsePrinterDefaults(false); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, null); - assertEquals(false,printSetup.getValidSettings()); - - printSetup.setValidSettings(true); - assertEquals(true,pSetup.getUsePrinterDefaults()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageSetup pSetup = worksheet.addNewPageSetup(); + pSetup.setUsePrinterDefaults(false); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(false, printSetup.getValidSettings()); + + printSetup.setValidSettings(true); + assertEquals(true, pSetup.getUsePrinterDefaults()); } public void testSetGetNoColor() { - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - pSetup.setBlackAndWhite(false); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, null); - assertEquals(false,printSetup.getNoColor()); - - printSetup.setNoColor(true); - assertEquals(true,pSetup.getBlackAndWhite()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageSetup pSetup = worksheet.addNewPageSetup(); + pSetup.setBlackAndWhite(false); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(false, printSetup.getNoColor()); + + printSetup.setNoColor(true); + assertEquals(true, pSetup.getBlackAndWhite()); } public void testSetGetDraft() { - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - pSetup.setDraft(false); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, null); - assertEquals(false,printSetup.getDraft()); - - printSetup.setDraft(true); - assertEquals(true,pSetup.getDraft()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageSetup pSetup = worksheet.addNewPageSetup(); + pSetup.setDraft(false); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(false, printSetup.getDraft()); + + printSetup.setDraft(true); + assertEquals(true, pSetup.getDraft()); } public void testSetGetNotes() { - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - pSetup.setCellComments(STCellComments.NONE); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, null); - assertEquals(false,printSetup.getNotes()); - - printSetup.setNotes(true); - assertEquals(PrintCellComments.AS_DISPLAYED.getValue(),pSetup.getCellComments()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageSetup pSetup = worksheet.addNewPageSetup(); + pSetup.setCellComments(STCellComments.NONE); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(false, printSetup.getNotes()); + + printSetup.setNotes(true); + assertEquals(PrintCellComments.AS_DISPLAYED.getValue(), pSetup.getCellComments().intValue()); } public void testSetGetUsePage() { - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - pSetup.setUseFirstPageNumber(false); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, null); - assertEquals(false,printSetup.getUsePage()); - - printSetup.setUsePage(true); - assertEquals(true,pSetup.getUseFirstPageNumber()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageSetup pSetup = worksheet.addNewPageSetup(); + pSetup.setUseFirstPageNumber(false); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(false, printSetup.getUsePage()); + + printSetup.setUsePage(true); + assertEquals(true, pSetup.getUseFirstPageNumber()); } public void testSetGetHVResolution() { - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - pSetup.setHorizontalDpi(120); - pSetup.setVerticalDpi(100); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, null); - assertEquals(120,printSetup.getHResolution()); - assertEquals(100,printSetup.getVResolution()); - - printSetup.setHResolution((short)150); - printSetup.setVResolution((short)130); - assertEquals(150,pSetup.getHorizontalDpi()); - assertEquals(130,pSetup.getVerticalDpi()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageSetup pSetup = worksheet.addNewPageSetup(); + pSetup.setHorizontalDpi(120); + pSetup.setVerticalDpi(100); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(120, printSetup.getHResolution()); + assertEquals(100, printSetup.getVResolution()); + + printSetup.setHResolution((short) 150); + printSetup.setVResolution((short) 130); + assertEquals(150, pSetup.getHorizontalDpi()); + assertEquals(130, pSetup.getVerticalDpi()); } public void testSetGetHeaderFooterMargin() { - CTPageMargins pMargins=CTPageMargins.Factory.newInstance(); - pMargins.setHeader(1.5); - pMargins.setFooter(2); - XSSFPrintSetup printSetup=new XSSFPrintSetup( null, pMargins); - assertEquals(1.5,printSetup.getHeaderMargin()); - assertEquals(2.0,printSetup.getFooterMargin()); - - printSetup.setHeaderMargin(5); - printSetup.setFooterMargin(3.5); - assertEquals(5.0,pMargins.getHeader()); - assertEquals(3.5,pMargins.getFooter()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageMargins pMargins = worksheet.addNewPageMargins(); + pMargins.setHeader(1.5); + pMargins.setFooter(2); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(1.5, printSetup.getHeaderMargin()); + assertEquals(2.0, printSetup.getFooterMargin()); + + printSetup.setHeaderMargin(5); + printSetup.setFooterMargin(3.5); + assertEquals(5.0, pMargins.getHeader()); + assertEquals(3.5, pMargins.getFooter()); } public void testSetGetCopies() { - CTPageSetup pSetup=CTPageSetup.Factory.newInstance(); - pSetup.setCopies(9); - XSSFPrintSetup printSetup=new XSSFPrintSetup(pSetup, null); - assertEquals(9,printSetup.getCopies()); - - printSetup.setCopies((short)15); - assertEquals(15,pSetup.getCopies()); + CTWorksheet worksheet = CTWorksheet.Factory.newInstance(); + CTPageSetup pSetup = worksheet.addNewPageSetup(); + pSetup.setCopies(9); + XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet); + assertEquals(9, printSetup.getCopies()); + + printSetup.setCopies((short) 15); + assertEquals(15, pSetup.getCopies()); } - } diff --git a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFRow.java b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFRow.java index f10b9e216f..86352bb123 100644 --- a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFRow.java +++ b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFRow.java @@ -43,7 +43,8 @@ public final class TestXSSFRow extends TestCase { * Test adding cells to a row in various places and see if we can find them again. */ public void testAddAndIterateCells() { - XSSFRow row = new XSSFRow(createParentObjects()); + XSSFSheet sheet = createParentObjects(); + XSSFRow row = sheet.createRow(0); // One cell at the beginning Cell cell1 = row.createCell((short) 1); @@ -125,7 +126,8 @@ public final class TestXSSFRow extends TestCase { assertFalse(row.getFirstCellNum() == (short) 2); // Test a row without cells - XSSFRow emptyRow = new XSSFRow(createParentObjects()); + XSSFSheet sheet = createParentObjects(); + XSSFRow emptyRow = sheet.createRow(0); assertEquals(-1, emptyRow.getFirstCellNum()); } @@ -155,7 +157,8 @@ public final class TestXSSFRow extends TestCase { * Tests for the missing/blank cell policy stuff */ public void testGetCellPolicy() throws Exception { - XSSFRow row = new XSSFRow(createParentObjects()); + XSSFSheet sheet = createParentObjects(); + XSSFRow row = sheet.createRow(0); // 0 -> string // 1 -> num @@ -214,7 +217,8 @@ public final class TestXSSFRow extends TestCase { * @return row */ private static XSSFRow getSampleRow() { - XSSFRow row = new XSSFRow(createParentObjects()); + XSSFSheet sheet = createParentObjects(); + XSSFRow row = sheet.createRow(0); row.createCell((short) 2); row.createCell((short) 3, Cell.CELL_TYPE_NUMERIC); row.createCell((short) 4); diff --git a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java index ea6bd8c154..882a816ee8 100644 --- a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java +++ b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java @@ -35,7 +35,6 @@ import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTCols; import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTComment; import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTComments; import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTRow; -import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTSheet; import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorksheet; import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTXf; import org.openxmlformats.schemas.spreadsheetml.x2006.main.STPane; @@ -284,7 +283,7 @@ public class TestXSSFSheet extends TestCase { public void testGetFooter() { XSSFWorkbook workbook = new XSSFWorkbook(); - XSSFSheet sheet = (XSSFSheet)workbook.createSheet("Sheet 1"); + XSSFSheet sheet = workbook.createSheet("Sheet 1"); assertNotNull(sheet.getFooter()); sheet.getFooter().setCenter("test center footer"); assertEquals("test center footer", sheet.getFooter().getCenter()); @@ -610,31 +609,25 @@ public class TestXSSFSheet extends TestCase { public void testGetCellComment() { XSSFWorkbook workbook = new XSSFWorkbook(); - CTSheet ctSheet = CTSheet.Factory.newInstance(); - CTWorksheet ctWorksheet = CTWorksheet.Factory.newInstance(); - CTComments ctComments = CTComments.Factory.newInstance(); - CommentsTable sheetComments = new CommentsTable(ctComments); - XSSFSheet sheet = new XSSFSheet(ctSheet, ctWorksheet, workbook, sheetComments); - assertNotNull(sheet); - - CTComment ctComment = ctComments.addNewCommentList().insertNewComment(0); - ctComment.setRef("C10"); - ctComment.setAuthorId(sheetComments.findAuthor("test C10 author")); - + XSSFSheet sheet = workbook.createSheet(); + XSSFComment comment = sheet.createComment(); + comment.setAuthor("test C10 author"); + sheet.setCellComment("C10", comment); + assertNotNull(sheet.getCellComment(9, 2)); assertEquals("test C10 author", sheet.getCellComment(9, 2).getAuthor()); } public void testSetCellComment() { XSSFWorkbook workbook = new XSSFWorkbook(); - CTSheet ctSheet = CTSheet.Factory.newInstance(); - CTWorksheet ctWorksheet = CTWorksheet.Factory.newInstance(); - XSSFSheet sheet = new XSSFSheet(ctSheet, ctWorksheet, workbook); + XSSFSheet sheet = workbook.createSheet(); + + XSSFComment comment = sheet.createComment(); + Cell cell = sheet.createRow(0).createCell((short)0); - CTComments ctComments = CTComments.Factory.newInstance(); - CommentsTable comments = new CommentsTable(ctComments); - XSSFComment comment = comments.addComment(); - + CommentsTable comments = (CommentsTable)sheet.getCommentsSourceIfExists(); + CTComments ctComments = comments.getCTComments(); + sheet.setCellComment("A1", comment); assertEquals("A1", ctComments.getCommentList().getCommentArray(0).getRef()); comment.setAuthor("test A1 author"); @@ -651,10 +644,10 @@ public class TestXSSFSheet extends TestCase { } public void testCreateFreezePane() { - Workbook workbook = new XSSFWorkbook(); - CTSheet ctSheet = CTSheet.Factory.newInstance(); - CTWorksheet ctWorksheet = CTWorksheet.Factory.newInstance(); - XSSFSheet sheet = new XSSFSheet(ctSheet, ctWorksheet, (XSSFWorkbook) workbook); + XSSFWorkbook workbook = new XSSFWorkbook(); + XSSFSheet sheet = workbook.createSheet(); + CTWorksheet ctWorksheet = sheet.getWorksheet(); + sheet.createFreezePane(2, 4); assertEquals((double)2, ctWorksheet.getSheetViews().getSheetViewArray(0).getPane().getXSplit()); assertEquals(STPane.BOTTOM_RIGHT, ctWorksheet.getSheetViews().getSheetViewArray(0).getPane().getActivePane()); @@ -668,20 +661,17 @@ public class TestXSSFSheet extends TestCase { } public void testNewMergedRegionAt() { - Workbook workbook = new XSSFWorkbook(); - CTSheet ctSheet = CTSheet.Factory.newInstance(); - CTWorksheet ctWorksheet = CTWorksheet.Factory.newInstance(); - XSSFSheet sheet = new XSSFSheet(ctSheet, ctWorksheet, (XSSFWorkbook) workbook); + XSSFWorkbook workbook = new XSSFWorkbook(); + XSSFSheet sheet = workbook.createSheet(); Region region = new Region("B2:D4"); sheet.addMergedRegion(region); assertEquals("B2:D4", sheet.getMergedRegionAt(0).getRegionRef()); } public void testGetNumMergedRegions() { - Workbook workbook = new XSSFWorkbook(); - CTSheet ctSheet = CTSheet.Factory.newInstance(); - CTWorksheet ctWorksheet = CTWorksheet.Factory.newInstance(); - XSSFSheet sheet = new XSSFSheet(ctSheet, ctWorksheet, (XSSFWorkbook) workbook); + XSSFWorkbook workbook = new XSSFWorkbook(); + XSSFSheet sheet = workbook.createSheet(); + CTWorksheet ctWorksheet = sheet.getWorksheet(); assertEquals(0, sheet.getNumMergedRegions()); Region region = new Region("B2:D4"); sheet.addMergedRegion(region); @@ -689,10 +679,9 @@ public class TestXSSFSheet extends TestCase { } public void testRemoveMergedRegion() { - Workbook workbook = new XSSFWorkbook(); - CTSheet ctSheet = CTSheet.Factory.newInstance(); - CTWorksheet ctWorksheet = CTWorksheet.Factory.newInstance(); - XSSFSheet sheet = new XSSFSheet(ctSheet, ctWorksheet, (XSSFWorkbook) workbook); + XSSFWorkbook workbook = new XSSFWorkbook(); + XSSFSheet sheet = workbook.createSheet(); + CTWorksheet ctWorksheet = sheet.getWorksheet(); Region region_1 = new Region("A1:B2"); Region region_2 = new Region("C3:D4"); Region region_3 = new Region("E5:F6"); @@ -710,11 +699,10 @@ public class TestXSSFSheet extends TestCase { } public void testSetDefaultColumnStyle() { - XSSFWorkbook workbook = new XSSFWorkbook(); - CTSheet ctSheet = CTSheet.Factory.newInstance(); - CTWorksheet ctWorksheet = CTWorksheet.Factory.newInstance(); - XSSFSheet sheet = new XSSFSheet(ctSheet, ctWorksheet, (XSSFWorkbook) workbook); - StylesTable stylesTable = (StylesTable) workbook.getStylesSource(); + XSSFWorkbook workbook = new XSSFWorkbook(); + XSSFSheet sheet = workbook.createSheet(); + CTWorksheet ctWorksheet = sheet.getWorksheet(); + StylesTable stylesTable = workbook.getStylesSource(); XSSFFont font = new XSSFFont(); font.setFontName("Cambria"); stylesTable.putFont(font); @@ -766,10 +754,8 @@ public class TestXSSFSheet extends TestCase { public void testGroupUngroupColumn() { - Workbook workbook = new XSSFWorkbook(); - CTSheet ctSheet = CTSheet.Factory.newInstance(); - CTWorksheet ctWorksheet = CTWorksheet.Factory.newInstance(); - XSSFSheet sheet = new XSSFSheet(ctSheet, ctWorksheet, (XSSFWorkbook) workbook); + XSSFWorkbook workbook = new XSSFWorkbook(); + XSSFSheet sheet = workbook.createSheet(); //one level sheet.groupColumn((short)2,(short)7); @@ -811,10 +797,8 @@ public class TestXSSFSheet extends TestCase { public void testGroupUngroupRow() { - Workbook workbook = new XSSFWorkbook(); - CTSheet ctSheet = CTSheet.Factory.newInstance(); - CTWorksheet ctWorksheet = CTWorksheet.Factory.newInstance(); - XSSFSheet sheet = new XSSFSheet(ctSheet, ctWorksheet, (XSSFWorkbook) workbook); + XSSFWorkbook workbook = new XSSFWorkbook(); + XSSFSheet sheet = workbook.createSheet(); //one level sheet.groupRow(9,10); diff --git a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/helpers/TestColumnHelper.java b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/helpers/TestColumnHelper.java index 62f465cc54..9e4fb761d0 100644 --- a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/helpers/TestColumnHelper.java +++ b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/helpers/TestColumnHelper.java @@ -259,9 +259,8 @@ public final class TestColumnHelper extends TestCase { public void testGetSetColDefaultStyle() { XSSFWorkbook workbook = new XSSFWorkbook(); - CTSheet ctSheet = CTSheet.Factory.newInstance(); - CTWorksheet ctWorksheet = CTWorksheet.Factory.newInstance(); - XSSFSheet sheet = new XSSFSheet(ctSheet, ctWorksheet, workbook); + XSSFSheet sheet = workbook.createSheet(); + CTWorksheet ctWorksheet = sheet.getWorksheet(); ColumnHelper columnHelper = sheet.getColumnHelper(); // POI column 3, OOXML column 4 |