]> source.dussan.org Git - poi.git/commitdiff
Expand on XSSFWorkbook tests, and get them working (needs updated ooxml)
authorNick Burch <nick@apache.org>
Fri, 21 Mar 2008 18:35:52 +0000 (18:35 +0000)
committerNick Burch <nick@apache.org>
Fri, 21 Mar 2008 18:35:52 +0000 (18:35 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/branches/ooxml@639752 13f79535-47bb-0310-9956-ffa450edef68

src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java

index 5f7d08ba307226ea87e5e0cbc84f0c571a65ffbe..e0f4e65fe40603c3d4ac071e4ced7ac1fa0eee96 100644 (file)
@@ -29,6 +29,10 @@ import org.apache.poi.xssf.model.StylesTable;
 import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTSheet;
 import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorkbook;
 
+import org.openxml4j.opc.ContentTypes;
+import org.openxml4j.opc.Package;
+import org.openxml4j.opc.PackagePart;
+import org.openxml4j.opc.PackagingURIHelper;
 
 public class TestXSSFWorkbook extends TestCase {
     public TestXSSFWorkbook(String name) {
@@ -170,8 +174,22 @@ public class TestXSSFWorkbook extends TestCase {
         workbook.write(out);
         out.close();
         
-        // Load back in again
-        workbook = new XSSFWorkbook(file.toString());
+        // Check the package contains what we'd expect it to
+        Package pkg = Package.open(file.toString());
+        PackagePart wbRelPart = 
+               pkg.getPart(PackagingURIHelper.createPartName("/xl/_rels/workbook.xml.rels"));
+        assertNotNull(wbRelPart);
+        assertTrue(wbRelPart.isRelationshipPart());
+        assertEquals(ContentTypes.RELATIONSHIPS_PART, wbRelPart.getContentType());
+        
+        PackagePart wbPart = 
+               pkg.getPart(PackagingURIHelper.createPartName("/xl/workbook.xml"));
+        // Links to the three sheets
+        assertTrue(wbPart.hasRelationships());
+        assertEquals(3, wbPart.getRelationships().size());
+        
+        // Load back the XSSFWorkbook
+        workbook = new XSSFWorkbook(pkg);
         assertEquals(3, workbook.getNumberOfSheets());
         assertNotNull(workbook.getSheetAt(0));
         assertNotNull(workbook.getSheetAt(1));
@@ -195,6 +213,16 @@ public class TestXSSFWorkbook extends TestCase {
                XSSFWorkbook workbook = new XSSFWorkbook(xml.toString());
                assertNotNull(workbook.getSharedStringSource());
                assertNotNull(workbook.getStylesSource());
+               
+               // And check a few low level bits too
+               Package pkg = Package.open(xml.toString());
+        PackagePart wbPart = 
+               pkg.getPart(PackagingURIHelper.createPartName("/xl/workbook.xml"));
+        
+        // Links to the three sheets, shared, styles and themes
+        assertTrue(wbPart.hasRelationships());
+        assertEquals(6, wbPart.getRelationships().size());
+
     }
     
     public void testLoadSave() throws Exception {