]> source.dussan.org Git - poi.git/commitdiff
[bug-66230] don't fail to create SXSSFSheet if auto size tracker can't be initialized
authorPJ Fanning <fanningpj@apache.org>
Thu, 18 Aug 2022 21:08:41 +0000 (21:08 +0000)
committerPJ Fanning <fanningpj@apache.org>
Thu, 18 Aug 2022 21:08:41 +0000 (21:08 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1903533 13f79535-47bb-0310-9956-ffa450edef68

poi-ooxml/src/test/java/org/apache/poi/xssf/streaming/SXSSFITestDataProviderWithNullAutoSizeTracker.java
poi-ooxml/src/test/java/org/apache/poi/xssf/streaming/TestSXSSFWorkbookWithNullAutoSizeTracker.java

index c24670ba80343be28f16dee3dafd8a27bcb6b263..44d2ad001762df8a704910386a225244e5d9103c 100644 (file)
@@ -31,7 +31,7 @@ public class SXSSFITestDataProviderWithNullAutoSizeTracker extends SXSSFITestDat
 
     @Override
     public SXSSFWorkbook createWorkbook() {
-        SXSSFWorkbook wb = new SXSSFWorkbook();
+        SXSSFWorkbook wb = new SXSSFWorkbookWithNullAutoSizeTracker();
         instances.add(wb);
         return wb;
     }
@@ -39,7 +39,7 @@ public class SXSSFITestDataProviderWithNullAutoSizeTracker extends SXSSFITestDat
     //************ SXSSF-specific methods ***************//
     @Override
     public SXSSFWorkbook createWorkbook(int rowAccessWindowSize) {
-        SXSSFWorkbook wb = new SXSSFWorkbook(rowAccessWindowSize);
+        SXSSFWorkbook wb = new SXSSFWorkbookWithNullAutoSizeTracker(rowAccessWindowSize);
         instances.add(wb);
         return wb;
     }
index cdaca74531d93e1075860dfb405434ebeec295a5..e5e9af53d31e0eb1834fbfacca80783ab751d07d 100644 (file)
@@ -671,4 +671,15 @@ public final class TestSXSSFWorkbookWithNullAutoSizeTracker extends BaseTestXWor
         }
     }
 
+    @Test
+    public void disableAutoSizeTracker() throws IOException {
+        try (Workbook workbook = _testDataProvider.createWorkbook(10)) {
+            assertThrows(IllegalStateException.class, () -> {
+                Sheet sheet = workbook.createSheet("testSheet");
+                sheet.createRow(0).createCell(0).setCellValue(0);
+                sheet.autoSizeColumn(0);
+            });
+        }
+    }
+
 }