Author: centic
Date: Wed Nov 20 20:29:49 2024
New Revision: 1921982

URL: http://svn.apache.org/viewvc?rev=1921982&view=rev
Log:
Add test to verify bug 69266

We could not reproduce the reported issue,
this test verifies this the functionality
some more now.

Modified:
    
poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java

Modified: 
poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java?rev=1921982&r1=1921981&r2=1921982&view=diff
==============================================================================
--- 
poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java
 (original)
+++ 
poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java
 Wed Nov 20 20:29:49 2024
@@ -21,12 +21,20 @@ import static org.junit.jupiter.api.Asse
 import static org.junit.jupiter.api.Assertions.assertFalse;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+
 import org.apache.poi.ss.usermodel.PageOrder;
 import org.apache.poi.ss.usermodel.PaperSize;
 import org.apache.poi.ss.usermodel.PrintCellComments;
 import org.apache.poi.ss.usermodel.PrintOrientation;
+import org.apache.poi.ss.usermodel.PrintSetup;
+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.xssf.XSSFITestDataProvider;
-import org.junit.jupiter.api.Disabled;
+import org.apache.poi.xssf.XSSFTestDataSamples;
 import org.junit.jupiter.api.Test;
 import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTPageMargins;
 import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTPageSetup;
@@ -287,15 +295,6 @@ class TestXSSFPrintSetup {
        wb.close();
     }
 
-    /**
-     * Open a file with print settings, save and check.
-     * Then, change, save, read, check
-     */
-    @Disabled
-    void testRoundTrip() {
-       // TODO
-    }
-
     @Test
     void testSetLandscapeFalse() {
         XSSFPrintSetup ps = new 
XSSFPrintSetup(CTWorksheet.Factory.newInstance());
@@ -321,4 +320,37 @@ class TestXSSFPrintSetup {
         ps.setLeftToRight(false);
         assertFalse(ps.getLeftToRight());
     }
+
+    @Test
+    public void test69266() throws IOException {
+        byte[] bytes;
+        try (Workbook workbook = 
XSSFTestDataSamples.openSampleWorkbook("sample.xlsx")) {
+            Sheet sheet = workbook.getSheetAt(0);
+
+            // Set Fit to Page options
+            sheet.setFitToPage(true);
+            PrintSetup printSetup = sheet.getPrintSetup();
+            printSetup.setFitWidth((short) 1);  // Fit to 1 page wide
+            printSetup.setFitHeight((short) 2); // Fit to 1 page tall
+
+            // Write the modified workbook out
+            try (ByteArrayOutputStream fos = new ByteArrayOutputStream()) {
+                workbook.write(fos);
+
+                fos.flush();
+                bytes = fos.toByteArray();
+            }
+        }
+
+        // verify that information is written out and read in properly again
+        try (Workbook workbook = WorkbookFactory.create(new 
ByteArrayInputStream(bytes))) {
+            Sheet sheet = workbook.getSheetAt(0);
+
+            // verify Fit to Page options
+            assertTrue(sheet.getFitToPage());
+            PrintSetup printSetup = sheet.getPrintSetup();
+            assertEquals(1, printSetup.getFitWidth());
+            assertEquals(2, printSetup.getFitHeight());
+        }
+    }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to