You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ki...@apache.org on 2020/12/24 18:42:38 UTC

svn commit: r1884783 [21/40] - in /poi: site/src/documentation/content/xdocs/ trunk/ trunk/sonar/ trunk/sonar/integration-test/ trunk/sonar/ooxml/ trunk/src/excelant/poi-ant-contrib/ trunk/src/excelant/testcases/org/apache/poi/ss/excelant/ trunk/src/ex...

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/eventmodel/TestAbortableListener.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/eventmodel/TestAbortableListener.java?rev=1884783&r1=1884782&r2=1884783&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/eventmodel/TestAbortableListener.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/eventmodel/TestAbortableListener.java Thu Dec 24 18:42:29 2020
@@ -17,8 +17,8 @@
 
 package org.apache.poi.hssf.eventmodel;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNull;
 
 import java.io.ByteArrayInputStream;
 import java.io.IOException;
@@ -31,7 +31,7 @@ import org.apache.poi.hssf.record.BOFRec
 import org.apache.poi.hssf.record.EOFRecord;
 import org.apache.poi.hssf.record.Record;
 import org.apache.poi.poifs.filesystem.POIFSFileSystem;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
 
 /**
  * Tests for {@link AbortableHSSFListener}

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/eventmodel/TestEventRecordFactory.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/eventmodel/TestEventRecordFactory.java?rev=1884783&r1=1884782&r2=1884783&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/eventmodel/TestEventRecordFactory.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/eventmodel/TestEventRecordFactory.java Thu Dec 24 18:42:29 2020
@@ -17,10 +17,10 @@
 
 package org.apache.poi.hssf.eventmodel;
 
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
@@ -40,8 +40,8 @@ import org.apache.poi.hssf.record.Standa
 import org.apache.poi.hssf.record.TestcaseRecordInputStream;
 import org.apache.poi.hssf.record.UnknownRecord;
 import org.apache.poi.util.NotImplemented;
-import org.junit.Ignore;
-import org.junit.Test;
+import org.junit.jupiter.api.Disabled;
+import org.junit.jupiter.api.Test;
 
 /**
  * enclosing_type describe the purpose here
@@ -65,7 +65,7 @@ public final class TestEventRecordFactor
 
         ERFListener listener = rec -> {
             wascalled[0] = true;
-            assertEquals("must be BOFRecord got SID=" + rec.getSid(), rec.getSid(), BOFRecord.sid);
+            assertEquals(rec.getSid(), BOFRecord.sid, "must be BOFRecord got SID=" + rec.getSid());
             return true;
         };
     	EventRecordFactory factory = new EventRecordFactory(listener, new short[] {BOFRecord.sid});
@@ -85,7 +85,7 @@ public final class TestEventRecordFactor
         eof.serialize(offset,bytes);
 
         factory.processRecords(new ByteArrayInputStream(bytes));
-        assertTrue("The record listener must be called", wascalled[0]);
+        assertTrue(wascalled[0], "The record listener must be called");
     }
 
 
@@ -107,7 +107,7 @@ public final class TestEventRecordFactor
 
         Record[] records = RecordFactory.createRecord(TestcaseRecordInputStream.create(bytes));
 
-        assertEquals("record.length must be 1, was =" + records.length, 1, records.length);
+        assertEquals(1, records.length, "record.length must be 1, was =" + records.length);
 
         byte[] rec1 = bof.serialize();
         byte[] rec2 = records[0].serialize();
@@ -121,9 +121,8 @@ public final class TestEventRecordFactor
      */
     @NotImplemented
     @Test
-    @Ignore
+    @Disabled
     public void testCreateContinuedRecord() {
-      //  fail("not implemented");
     }
 
 
@@ -145,7 +144,7 @@ public final class TestEventRecordFactor
     }
 
     @Test
-    @Ignore("same as testContinuedUnknownRecord but with SequenceInputStream which causes the available() bug 59893")
+    @Disabled("same as testContinuedUnknownRecord but with SequenceInputStream which causes the available() bug 59893")
     public void bug59893() {
         Iterator<ByteArrayInputStream> iter = Stream.of(CONTINUE_DATA).map(ByteArrayInputStream::new).iterator();
         SequenceInputStream sis = new SequenceInputStream(IteratorUtils.asEnumeration(iter));
@@ -164,6 +163,6 @@ public final class TestEventRecordFactor
         };
         EventRecordFactory factory = new EventRecordFactory(listener, new short[] {-256, 0x3C});
         factory.processRecords(data);
-        assertFalse("left over input data", expectedData.hasNext());
+        assertFalse(expectedData.hasNext(), "left over input data");
     }
 }

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestEventWorkbookBuilder.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestEventWorkbookBuilder.java?rev=1884783&r1=1884782&r2=1884783&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestEventWorkbookBuilder.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestEventWorkbookBuilder.java Thu Dec 24 18:42:29 2020
@@ -17,9 +17,9 @@
 
 package org.apache.poi.hssf.eventusermodel;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import java.io.IOException;
 import java.io.InputStream;
@@ -31,14 +31,13 @@ import org.apache.poi.hssf.eventusermode
 import org.apache.poi.hssf.model.HSSFFormulaParser;
 import org.apache.poi.hssf.model.InternalWorkbook;
 import org.apache.poi.hssf.record.FormulaRecord;
-import org.apache.poi.hssf.record.Record;
 import org.apache.poi.hssf.usermodel.HSSFEvaluationWorkbook;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.apache.poi.poifs.filesystem.POIFSFileSystem;
 import org.apache.poi.ss.formula.ptg.Ptg;
 import org.apache.poi.ss.formula.ptg.Ref3DPtg;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
 
 /**
  * Tests for {@link EventWorkbookBuilder}
@@ -47,7 +46,7 @@ public final class TestEventWorkbookBuil
     private final List<FormulaRecord> fRecs = new ArrayList<>();
     private SheetRecordCollectingListener listener;
 
-    @Before
+    @BeforeEach
     public void setUp() throws IOException {
         HSSFRequest req = new HSSFRequest();
         fRecs.clear();

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestFormatTrackingHSSFListener.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestFormatTrackingHSSFListener.java?rev=1884783&r1=1884782&r2=1884783&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestFormatTrackingHSSFListener.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestFormatTrackingHSSFListener.java Thu Dec 24 18:42:29 2020
@@ -16,9 +16,9 @@
 ==================================================================== */
 
 package org.apache.poi.hssf.eventusermodel;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import java.io.File;
 import java.util.ArrayList;
@@ -28,9 +28,9 @@ import org.apache.poi.hssf.HSSFTestDataS
 import org.apache.poi.hssf.record.CellValueRecordInterface;
 import org.apache.poi.hssf.record.FormulaRecord;
 import org.apache.poi.hssf.record.NumberRecord;
-import org.apache.poi.hssf.record.Record;
 import org.apache.poi.poifs.filesystem.POIFSFileSystem;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+
 /**
  * Tests for FormatTrackingHSSFListener
  */
@@ -43,14 +43,14 @@ public final class TestFormatTrackingHSS
 		mockListen = new MockHSSFListener();
 		listener = new FormatTrackingHSSFListener(mockListen);
 		req.addListenerForAllRecords(listener);
-		
+
         File file = HSSFTestDataSamples.getSampleFile(filename);
 		HSSFEventFactory factory = new HSSFEventFactory();
 		POIFSFileSystem fs = new POIFSFileSystem(file);
 		factory.processWorkbookEvents(req, fs);
 		fs.close();
-	} 
-	
+	}
+
 	@Test
 	public void testFormats() throws Exception {
 		processFile("MissingBits.xls");
@@ -60,7 +60,7 @@ public final class TestFormatTrackingHSS
 		assertEquals("_(* #,##0.00_);_(* (#,##0.00);_(* \"-\"??_);_(@_)", listener.getFormatString(43));
 		assertEquals("_(\"$\"* #,##0.00_);_(\"$\"* (#,##0.00);_(\"$\"* \"-\"??_);_(@_)", listener.getFormatString(44));
 	}
-	
+
 	/**
 	 * Ensure that all number and formula records can be
 	 *  turned into strings without problems.
@@ -70,40 +70,40 @@ public final class TestFormatTrackingHSS
 	 */
 	@Test
 	public void testTurnToString() throws Exception {
-		String[] files = new String[] { 
-				"45365.xls", "45365-2.xls", "MissingBits.xls" 
+		String[] files = new String[] {
+				"45365.xls", "45365-2.xls", "MissingBits.xls"
 		};
 		for (String file : files) {
 			processFile(file);
-			
+
 			// Check we found our formats
 			assertTrue(listener.getNumberOfCustomFormats() > 5);
 			assertTrue(listener.getNumberOfExtendedFormats() > 5);
-			
+
 			// Now check we can turn all the numeric
 			//  cells into strings without error
 			for(org.apache.poi.hssf.record.Record r : mockListen._records) {
 				CellValueRecordInterface cvr = null;
-				
+
 				if(r instanceof NumberRecord) {
 					cvr = (CellValueRecordInterface)r;
 				}
 				if(r instanceof FormulaRecord) {
 					cvr = (CellValueRecordInterface)r;
 				}
-				
+
 				if(cvr != null) {
-					// Should always give us a string 
+					// Should always give us a string
 					String s = listener.formatNumberDateCell(cvr);
 					assertNotNull(s);
 					assertTrue(s.length() > 0);
 				}
 			}
-			
+
 			// TODO - test some specific format strings
 		}
 	}
-	
+
 	private static final class MockHSSFListener implements HSSFListener {
 		public MockHSSFListener() {}
 		private final List<org.apache.poi.hssf.record.Record> _records = new ArrayList<>();

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestHSSFEventFactory.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestHSSFEventFactory.java?rev=1884783&r1=1884782&r2=1884783&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestHSSFEventFactory.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestHSSFEventFactory.java Thu Dec 24 18:42:29 2020
@@ -17,10 +17,11 @@
 
 package org.apache.poi.hssf.eventusermodel;
 
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import java.io.IOException;
 import java.io.InputStream;
@@ -40,7 +41,7 @@ import org.apache.poi.hssf.record.Select
 import org.apache.poi.hssf.record.WindowTwoRecord;
 import org.apache.poi.hssf.record.crypto.Biff8EncryptionKey;
 import org.apache.poi.poifs.filesystem.POIFSFileSystem;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
 
 /**
  * Testing for {@link HSSFEventFactory}
@@ -115,11 +116,11 @@ public final class TestHSSFEventFactory
         openSample("WORKBOOK_in_capitals.xls");
     }
 
-    @Test(expected = EncryptedDocumentException.class)
+    @Test
     @SuppressWarnings("java:S2699")
-    public void testWithPasswordProtectedWorkbooksNoPass() throws Exception {
+    public void testWithPasswordProtectedWorkbooksNoPass() {
         // Without a password, can't be read
-        openSample("xor-encryption-abc.xls");
+        assertThrows(EncryptedDocumentException.class, () -> openSample("xor-encryption-abc.xls"));
     }
 
     @Test
@@ -157,10 +158,10 @@ public final class TestHSSFEventFactory
                 }
             }
 
-            assertTrue("Sheet record not found", hasSheet);
-            assertTrue("Numeric record for A1 not found", hasA1);
-            assertTrue("Numeric record for A2 not found", hasA2);
-            assertTrue("Numeric record for A3 not found", hasA3);
+            assertTrue(hasSheet, "Sheet record not found");
+            assertTrue(hasA1, "Numeric record for A1 not found");
+            assertTrue(hasA2, "Numeric record for A2 not found");
+            assertTrue(hasA3, "Numeric record for A3 not found");
         } finally {
             Biff8EncryptionKey.setCurrentUserPassword(null);
         }

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestMissingRecordAwareHSSFListener.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestMissingRecordAwareHSSFListener.java?rev=1884783&r1=1884782&r2=1884783&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestMissingRecordAwareHSSFListener.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/eventusermodel/TestMissingRecordAwareHSSFListener.java Thu Dec 24 18:42:29 2020
@@ -17,8 +17,8 @@
 
 package org.apache.poi.hssf.eventusermodel;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import java.io.IOException;
 import java.io.InputStream;
@@ -36,12 +36,11 @@ import org.apache.poi.hssf.record.Dimens
 import org.apache.poi.hssf.record.LabelSSTRecord;
 import org.apache.poi.hssf.record.MulBlankRecord;
 import org.apache.poi.hssf.record.NumberRecord;
-import org.apache.poi.hssf.record.Record;
 import org.apache.poi.hssf.record.RowRecord;
 import org.apache.poi.hssf.record.SharedFormulaRecord;
 import org.apache.poi.hssf.record.WindowTwoRecord;
 import org.apache.poi.poifs.filesystem.POIFSFileSystem;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
 
 /**
  * Tests for MissingRecordAwareHSSFListener

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/extractor/TestExcelExtractor.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/extractor/TestExcelExtractor.java?rev=1884783&r1=1884782&r2=1884783&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/extractor/TestExcelExtractor.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/extractor/TestExcelExtractor.java Thu Dec 24 18:42:29 2020
@@ -19,9 +19,9 @@ package org.apache.poi.hssf.extractor;
 
 import static org.apache.poi.POITestCase.assertContains;
 import static org.apache.poi.POITestCase.assertStartsWith;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import java.io.File;
 import java.io.IOException;
@@ -34,7 +34,7 @@ import org.apache.poi.hssf.usermodel.HSS
 import org.apache.poi.poifs.filesystem.DirectoryNode;
 import org.apache.poi.poifs.filesystem.POIFSFileSystem;
 import org.apache.poi.util.LocaleUtil;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
 
 /**
  *

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/extractor/TestOldExcelExtractor.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/extractor/TestOldExcelExtractor.java?rev=1884783&r1=1884782&r2=1884783&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/extractor/TestOldExcelExtractor.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/extractor/TestOldExcelExtractor.java Thu Dec 24 18:42:29 2020
@@ -18,10 +18,10 @@
 package org.apache.poi.hssf.extractor;
 
 import static org.apache.poi.POITestCase.assertContains;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import java.io.ByteArrayOutputStream;
 import java.io.File;
@@ -38,8 +38,9 @@ import org.apache.poi.POIDataSamples;
 import org.apache.poi.hssf.HSSFTestDataSamples;
 import org.apache.poi.poifs.filesystem.OfficeXmlFileException;
 import org.apache.poi.poifs.filesystem.POIFSFileSystem;
+import org.apache.poi.util.NullPrintStream;
 import org.apache.poi.util.RecordFormatException;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
 
 /**
  * Unit tests for the Excel 5/95 and Excel 4 (and older) text
@@ -228,38 +229,31 @@ public final class TestOldExcelExtractor
         }
     }
 
-    @Test(expected=OfficeXmlFileException.class)
+    @Test
     public void testOpenInvalidFile1() throws IOException {
         // a file that exists, but is a different format
-        createExtractor("WithVariousData.xlsx").close();
-    }
-
+        assertThrows(OfficeXmlFileException.class, () -> createExtractor("WithVariousData.xlsx").close());
 
-    @Test(expected=RecordFormatException.class)
-    public void testOpenInvalidFile2() throws IOException {
         // a completely different type of file
-        createExtractor("48936-strings.txt").close();
-    }
+        assertThrows(RecordFormatException.class, () -> createExtractor("48936-strings.txt").close());
 
-    @Test(expected=FileNotFoundException.class)
-    public void testOpenInvalidFile3() throws IOException {
         // a POIFS file which is not a Workbook
         try (InputStream is = POIDataSamples.getDocumentInstance().openResourceAsStream("47304.doc")) {
-            new OldExcelExtractor(is).close();
+            assertThrows(FileNotFoundException.class, () -> new OldExcelExtractor(is).close());
         }
     }
 
-    @Test(expected=EmptyFileException.class)
-    public void testOpenNonExistingFile() throws IOException {
+    @Test
+    public void testOpenNonExistingFile() {
         // a file that exists, but is a different format
-        new OldExcelExtractor(new File("notexistingfile.xls")).close();
+        assertThrows(EmptyFileException.class, () -> new OldExcelExtractor(new File("notexistingfile.xls")).close());
     }
 
     @Test
     public void testInputStream() throws IOException {
         File file = HSSFTestDataSamples.getSampleFile("testEXCEL_3.xls");
         try (InputStream stream = new FileInputStream(file);
-             OldExcelExtractor extractor = new OldExcelExtractor(stream);) {
+             OldExcelExtractor extractor = new OldExcelExtractor(stream)) {
             String text = extractor.getText();
             assertNotNull(text);
         }
@@ -299,27 +293,23 @@ public final class TestOldExcelExtractor
         }
     }
 
-    @Test(expected = FileNotFoundException.class)
+    @Test
     public void testDirectoryNodeInvalidFile() throws IOException {
         File file = POIDataSamples.getDocumentInstance().getFile("test.doc");
-        try (POIFSFileSystem fs = new POIFSFileSystem(file);
-             OldExcelExtractor extractor = new OldExcelExtractor(fs.getRoot())) {
-            fail("Should throw exception here");
+        try (POIFSFileSystem fs = new POIFSFileSystem(file)) {
+             assertThrows(FileNotFoundException.class, () -> new OldExcelExtractor(fs.getRoot()));
         }
     }
 
-    @Test(expected = ExitException.class)
-    public void testMainUsage() throws IOException {
+    @Test
+    public void testMainUsage() {
         PrintStream save = System.err;
         SecurityManager sm = System.getSecurityManager();
         System.setSecurityManager(new NoExitSecurityManager());
         try {
-            try (ByteArrayOutputStream out = new ByteArrayOutputStream()) {
-                PrintStream str = new PrintStream(out, false, "UTF-8");
-                System.setErr(str);
-                // calls System.exit()
-                OldExcelExtractor.main(new String[]{});
-            }
+            System.setErr(new NullPrintStream());
+            // calls System.exit()
+            assertThrows(ExitException.class, () -> OldExcelExtractor.main(new String[]{}));
         } finally {
             System.setSecurityManager(sm);
             System.setErr(save);
@@ -336,13 +326,13 @@ public final class TestOldExcelExtractor
             System.setOut(str);
             OldExcelExtractor.main(new String[] {file.getAbsolutePath()});
             String string = out.toString("UTF-8");
-            assertTrue("Had: " + string, string.contains("Table C-13--Lemons"));
+            assertTrue(string.contains("Table C-13--Lemons"), "Had: " + string);
         } finally {
             System.setOut(save);
         }
     }
 
-    @Test(expected = EncryptedDocumentException.class)
+    @Test
     public void testEncryptionException() throws IOException {
         //test file derives from Common Crawl
         File file = HSSFTestDataSamples.getSampleFile("60284.xls");
@@ -350,7 +340,7 @@ public final class TestOldExcelExtractor
         try (OldExcelExtractor ex = new OldExcelExtractor(file)) {
             assertEquals(5, ex.getBiffVersion());
             assertEquals(5, ex.getFileType());
-            ex.getText();
+            assertThrows(EncryptedDocumentException.class, ex::getText);
         }
     }
 

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingAggregate.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingAggregate.java?rev=1884783&r1=1884782&r2=1884783&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingAggregate.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingAggregate.java Thu Dec 24 18:42:29 2020
@@ -17,12 +17,11 @@
 package org.apache.poi.hssf.model;
 
 import static org.apache.poi.poifs.storage.RawDataUtil.decompress;
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertSame;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertSame;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
@@ -32,6 +31,7 @@ import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Stream;
 
 import org.apache.poi.ddf.DefaultEscherRecordFactory;
 import org.apache.poi.ddf.EscherContainerRecord;
@@ -55,7 +55,10 @@ import org.apache.poi.hssf.usermodel.HSS
 import org.apache.poi.hssf.usermodel.HSSFSheet;
 import org.apache.poi.hssf.usermodel.HSSFTestHelper;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
 
 public class TestDrawingAggregate {
     /**
@@ -123,82 +126,69 @@ public class TestDrawingAggregate {
         }
     }
 
+    public static Stream<Arguments> samples() {
+        File testData = new File(System.getProperty("POI.testdata.path"), "spreadsheet");
+        File[] files = testData.listFiles((dir, name) -> name.endsWith(".xls"));
+        assertNotNull(files, "Need to find files in test-data path, had path: " + testData);
+        return Stream.of(files).map(Arguments::of);
+    }
+
     /**
+     * test that we correctly read and write drawing aggregates in all .xls files in POI test samples.
      * iterate over all sheets, aggregate drawing records (if there are any)
      * and remember information about the aggregated data.
      * Then serialize the workbook, read back and assert that the aggregated data is preserved.
      *
      * The assertion is strict meaning that the drawing data before and after save must be equal.
      */
-    private static void assertWriteAndReadBack(HSSFWorkbook wb) throws IOException {
-        // map aggregate info by sheet index
-        Map<Integer, DrawingAggregateInfo> aggs = new HashMap<>();
-        for(int i = 0; i < wb.getNumberOfSheets(); i++){
-            HSSFSheet sheet = wb.getSheetAt(i);
-            DrawingAggregateInfo info = DrawingAggregateInfo.get(sheet);
-            if(info != null) {
-                aggs.put(i, info);
-                HSSFPatriarch p = sheet.getDrawingPatriarch();
-
-                // compare aggregate.serialize() with raw bytes from the record stream
-                EscherAggregate agg = HSSFTestHelper.getEscherAggregate(p);
-
-                byte[] dgBytes1 = info.getRawBytes();
-                byte[] dgBytes2 = agg.serialize();
-
-                assertEquals("different size of raw data ande aggregate.serialize()", dgBytes1.length, dgBytes2.length);
-                assertArrayEquals("raw drawing data (" + dgBytes1.length + " bytes) and aggregate.serialize() are different.", dgBytes1, dgBytes2);
-            }
-        }
+    @ParameterizedTest
+    @MethodSource("samples")
+    public void testAllTestSamples(File file) throws IOException {
+        boolean ignoreParse = true;
+        try (HSSFWorkbook wb = HSSFTestDataSamples.openSampleWorkbook(file.getName())) {
+            ignoreParse = false;
+
+            // map aggregate info by sheet index
+            Map<Integer, DrawingAggregateInfo> aggs = new HashMap<>();
+            for (int i = 0; i < wb.getNumberOfSheets(); i++){
+                HSSFSheet sheet = wb.getSheetAt(i);
+                DrawingAggregateInfo info = DrawingAggregateInfo.get(sheet);
+                if(info != null) {
+                    aggs.put(i, info);
+                    HSSFPatriarch p = sheet.getDrawingPatriarch();
 
-        if(aggs.size() != 0){
-            HSSFWorkbook wb2 = HSSFTestDataSamples.writeOutAndReadBack(wb);
-            for(int i = 0; i < wb2.getNumberOfSheets(); i++){
-                DrawingAggregateInfo info1 = aggs.get(i);
-                if(info1 != null) {
-                    HSSFSheet sheet2 = wb2.getSheetAt(i);
-                    DrawingAggregateInfo info2 = DrawingAggregateInfo.get(sheet2);
-                    byte[] dgBytes1 = info1.getRawBytes();
-                    byte[] dgBytes2 = info2.getRawBytes();
-                    assertEquals("different size of drawing data before and after save", dgBytes1.length, dgBytes2.length);
-                    assertArrayEquals("drawing data (" + dgBytes1.length + " bytes) before and after save is different.", dgBytes1, dgBytes2);
+                    // compare aggregate.serialize() with raw bytes from the record stream
+                    EscherAggregate agg = HSSFTestHelper.getEscherAggregate(p);
+
+                    byte[] dgBytes1 = info.getRawBytes();
+                    byte[] dgBytes2 = agg.serialize();
+
+                    assertEquals(dgBytes1.length, dgBytes2.length, "different size of raw data ande aggregate.serialize()");
+                    assertArrayEquals(dgBytes1, dgBytes2, "raw drawing data (" + dgBytes1.length + " bytes) and aggregate.serialize() are different.");
                 }
             }
-            wb2.close();
-        }
-    }
 
-    /**
-     * test that we correctly read and write drawing aggregates
-     *  in all .xls files in POI test samples
-     */
-    @Test
-    public void testAllTestSamples() throws IOException {
-        File[] xls = new File(System.getProperty("POI.testdata.path"), "spreadsheet").listFiles(
-            (dir, name) -> name.endsWith(".xls")
-        );
-        assertNotNull(
-                "Need to find files in test-data path, had path: " + new File(System.getProperty("POI.testdata.path"), "spreadsheet"),
-                xls);
-        for(File file : xls) {
-            HSSFWorkbook wb;
-            try {
-                wb = HSSFTestDataSamples.openSampleWorkbook(file.getName());
-            } catch (Throwable e){
-                // don't bother about files we cannot read - they are different bugs
-                // System.out.println("[WARN]  Cannot read " + file.getName());
-                continue;
+            if(aggs.size() != 0){
+                try (HSSFWorkbook wb2 = HSSFTestDataSamples.writeOutAndReadBack(wb)) {
+                    for (int i = 0; i < wb2.getNumberOfSheets(); i++) {
+                        DrawingAggregateInfo info1 = aggs.get(i);
+                        if (info1 != null) {
+                            HSSFSheet sheet2 = wb2.getSheetAt(i);
+                            DrawingAggregateInfo info2 = DrawingAggregateInfo.get(sheet2);
+                            byte[] dgBytes1 = info1.getRawBytes();
+                            byte[] dgBytes2 = info2.getRawBytes();
+                            assertEquals(dgBytes1.length, dgBytes2.length, "different size of drawing data before and after save");
+                            assertArrayEquals(dgBytes1, dgBytes2, "drawing data (" + dgBytes1.length + " bytes) before and after save is different.");
+                        }
+                    }
+                }
             }
-            try {
-                assertWriteAndReadBack(wb);
-            } catch (Exception e) {
-                String filename = file.getName();
-                System.out.println("Drawing Aggregate re-write test failed for " + filename);
-                e.printStackTrace(System.out);
 
-                fail("Error when writing and re-reading workbook " + filename + "\n" + e);
+        } catch (Throwable e) {
+            // don't bother about files we cannot read - they are different bugs
+            if (!ignoreParse) {
+                throw e;
             }
-            wb.close();
         }
     }
 
@@ -223,7 +213,7 @@ public class TestDrawingAggregate {
             records.add(r);
             pos += bytesRead;
         }
-        assertEquals("data was not fully read", dgBytes.length, pos);
+        assertEquals(dgBytes.length, pos, "data was not fully read");
 
         // serialize to byte array
         ByteArrayOutputStream out = new ByteArrayOutputStream();
@@ -292,8 +282,8 @@ public class TestDrawingAggregate {
                 agg = (EscherAggregate) ish.findFirstRecordBySid(EscherAggregate.sid);
                 assertNotNull(agg);
                 byte[] dgBytesAfterSave = agg.serialize();
-                assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
-                assertArrayEquals("drawing data before and after save is different", dgBytes, dgBytesAfterSave);
+                assertEquals(dgBytes.length, dgBytesAfterSave.length, "different size of drawing data before and after save");
+                assertArrayEquals(dgBytes, dgBytesAfterSave, "drawing data before and after save is different");
             }
         }
     }
@@ -313,8 +303,8 @@ public class TestDrawingAggregate {
             EscherAggregate agg = (EscherAggregate) ish.findFirstRecordBySid(EscherAggregate.sid);
             assertNotNull(agg);
             byte[] dgBytesAfterSave = agg.serialize();
-            assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
-            assertArrayEquals("drawing data before and after save is different", dgBytes, dgBytesAfterSave);
+            assertEquals(dgBytes.length, dgBytesAfterSave.length, "different size of drawing data before and after save");
+            assertArrayEquals(dgBytes, dgBytesAfterSave, "drawing data before and after save is different");
         }
     }
 
@@ -333,13 +323,13 @@ public class TestDrawingAggregate {
             EscherAggregate agg = (EscherAggregate) ish.findFirstRecordBySid(EscherAggregate.sid);
             assertNotNull(agg);
             byte[] dgBytesAfterSave = agg.serialize();
-            assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
+            assertEquals(dgBytes.length, dgBytesAfterSave.length, "different size of drawing data before and after save");
             for (int i = 0; i < dgBytes.length; i++) {
                 if (dgBytes[i] != dgBytesAfterSave[i]) {
                     System.out.println("pos = " + i);
                 }
             }
-            assertArrayEquals("drawing data before and after save is different", dgBytes, dgBytesAfterSave);
+            assertArrayEquals(dgBytes, dgBytesAfterSave, "drawing data before and after save is different");
         }
     }
 
@@ -357,11 +347,10 @@ public class TestDrawingAggregate {
             List<RecordBase> records = isheet.getRecords();
 
             // the sheet's drawing is not aggregated
-            assertEquals("wrong size of sheet records stream", 394, records.size());
+            assertEquals(394, records.size(), "wrong size of sheet records stream");
             // the last record before the drawing block
-            assertTrue(
-                    "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName(),
-                    records.get(18) instanceof RowRecordsAggregate);
+            assertTrue(records.get(18) instanceof RowRecordsAggregate,
+                "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName());
 
             // records to be aggregated
             List<RecordBase> dgRecords = records.subList(19, 389);
@@ -381,9 +370,7 @@ public class TestDrawingAggregate {
             }
 
             // the first record after the drawing block
-            assertTrue(
-                    "records.get(389) is expected to be Window2",
-                    records.get(389) instanceof WindowTwoRecord);
+            assertTrue(records.get(389) instanceof WindowTwoRecord, "records.get(389) is expected to be Window2");
 
             // aggregate drawing records.
             // The subrange [19, 388] is expected to be replaced with a EscherAggregate object
@@ -391,18 +378,17 @@ public class TestDrawingAggregate {
             int loc = isheet.aggregateDrawingRecords(drawingManager, false);
             EscherAggregate agg = (EscherAggregate) records.get(loc);
 
-            assertEquals("wrong size of the aggregated sheet records stream", 25, records.size());
-            assertTrue(
-                    "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName(),
-                    records.get(18) instanceof RowRecordsAggregate);
-            assertTrue("records.get(19) is expected to be EscherAggregate but was " + records.get(19).getClass().getSimpleName(),
-                       records.get(19) instanceof EscherAggregate);
-            assertTrue("records.get(20) is expected to be Window2 but was " + records.get(20).getClass().getSimpleName(),
-                       records.get(20) instanceof WindowTwoRecord);
+            assertEquals(25, records.size(), "wrong size of the aggregated sheet records stream");
+            assertTrue(records.get(18) instanceof RowRecordsAggregate,
+                "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName());
+            assertTrue(records.get(19) instanceof EscherAggregate,
+                "records.get(19) is expected to be EscherAggregate but was " + records.get(19).getClass().getSimpleName());
+            assertTrue(records.get(20) instanceof WindowTwoRecord,
+                "records.get(20) is expected to be Window2 but was " + records.get(20).getClass().getSimpleName());
 
             byte[] dgBytesAfterSave = agg.serialize();
-            assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
-            assertArrayEquals("drawing data before and after save is different", dgBytes, dgBytesAfterSave);
+            assertEquals(dgBytes.length, dgBytesAfterSave.length, "different size of drawing data before and after save");
+            assertArrayEquals(dgBytes, dgBytesAfterSave, "drawing data before and after save is different");
         }
     }
 
@@ -425,11 +411,10 @@ public class TestDrawingAggregate {
             List<RecordBase> records = isheet.getRecords();
 
             // the sheet's drawing is not aggregated
-            assertEquals("wrong size of sheet records stream", 32, records.size());
+            assertEquals(32, records.size(), "wrong size of sheet records stream");
             // the last record before the drawing block
-            assertTrue(
-                    "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName(),
-                    records.get(18) instanceof RowRecordsAggregate);
+            assertTrue(records.get(18) instanceof RowRecordsAggregate,
+                "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName());
 
             // records to be aggregated
             List<RecordBase> dgRecords = records.subList(19, 26);
@@ -449,9 +434,7 @@ public class TestDrawingAggregate {
             byte[] dgBytes = toByteArray(dgRecords);
 
             // the first record after the drawing block
-            assertTrue(
-                    "records.get(26) is expected to be Window2",
-                    records.get(26) instanceof WindowTwoRecord);
+            assertTrue(records.get(26) instanceof WindowTwoRecord, "records.get(26) is expected to be Window2");
 
             // aggregate drawing records.
             // The subrange [19, 38] is expected to be replaced with a EscherAggregate object
@@ -459,18 +442,17 @@ public class TestDrawingAggregate {
             int loc = isheet.aggregateDrawingRecords(drawingManager, false);
             EscherAggregate agg = (EscherAggregate) records.get(loc);
 
-            assertEquals("wrong size of the aggregated sheet records stream", 26, records.size());
-            assertTrue(
-                    "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName(),
-                    records.get(18) instanceof RowRecordsAggregate);
-            assertTrue("records.get(19) is expected to be EscherAggregate but was " + records.get(19).getClass().getSimpleName(),
-                       records.get(19) instanceof EscherAggregate);
-            assertTrue("records.get(20) is expected to be Window2 but was " + records.get(20).getClass().getSimpleName(),
-                       records.get(20) instanceof WindowTwoRecord);
+            assertEquals(26, records.size(), "wrong size of the aggregated sheet records stream");
+            assertTrue(records.get(18) instanceof RowRecordsAggregate,
+                "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName());
+            assertTrue(records.get(19) instanceof EscherAggregate,
+                "records.get(19) is expected to be EscherAggregate but was " + records.get(19).getClass().getSimpleName());
+            assertTrue(records.get(20) instanceof WindowTwoRecord,
+                "records.get(20) is expected to be Window2 but was " + records.get(20).getClass().getSimpleName());
 
             byte[] dgBytesAfterSave = agg.serialize();
-            assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
-            assertArrayEquals("drawing data before and after save is different", dgBytes, dgBytesAfterSave);
+            assertEquals(dgBytes.length, dgBytesAfterSave.length, "different size of drawing data before and after save");
+            assertArrayEquals(dgBytes, dgBytesAfterSave, "drawing data before and after save is different");
         }
     }
 
@@ -510,11 +492,10 @@ public class TestDrawingAggregate {
             List<RecordBase> records = isheet.getRecords();
 
             // the sheet's drawing is not aggregated
-            assertEquals("wrong size of sheet records stream", 46, records.size());
+            assertEquals(46, records.size(), "wrong size of sheet records stream");
             // the last record before the drawing block
-            assertTrue(
-                    "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName(),
-                    records.get(18) instanceof RowRecordsAggregate);
+            assertTrue(records.get(18) instanceof RowRecordsAggregate,
+                "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName());
 
             // records to be aggregated
             List<RecordBase> dgRecords = records.subList(19, 39);
@@ -534,9 +515,7 @@ public class TestDrawingAggregate {
             byte[] dgBytes = toByteArray(dgRecords);
 
             // the first record after the drawing block
-            assertTrue(
-                    "records.get(39) is expected to be Window2",
-                    records.get(39) instanceof WindowTwoRecord);
+            assertTrue(records.get(39) instanceof WindowTwoRecord, "records.get(39) is expected to be Window2");
 
             // aggregate drawing records.
             // The subrange [19, 38] is expected to be replaced with a EscherAggregate object
@@ -544,18 +523,17 @@ public class TestDrawingAggregate {
             int loc = isheet.aggregateDrawingRecords(drawingManager, false);
             EscherAggregate agg = (EscherAggregate) records.get(loc);
 
-            assertEquals("wrong size of the aggregated sheet records stream", 27, records.size());
-            assertTrue(
-                    "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName(),
-                    records.get(18) instanceof RowRecordsAggregate);
-            assertTrue("records.get(19) is expected to be EscherAggregate but was " + records.get(19).getClass().getSimpleName(),
-                       records.get(19) instanceof EscherAggregate);
-            assertTrue("records.get(20) is expected to be Window2 but was " + records.get(20).getClass().getSimpleName(),
-                       records.get(20) instanceof WindowTwoRecord);
+            assertEquals(27, records.size(), "wrong size of the aggregated sheet records stream");
+            assertTrue(records.get(18) instanceof RowRecordsAggregate,
+                    "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName());
+            assertTrue(records.get(19) instanceof EscherAggregate,
+                "records.get(19) is expected to be EscherAggregate but was " + records.get(19).getClass().getSimpleName());
+            assertTrue(records.get(20) instanceof WindowTwoRecord,
+                "records.get(20) is expected to be Window2 but was " + records.get(20).getClass().getSimpleName());
 
             byte[] dgBytesAfterSave = agg.serialize();
-            assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
-            assertArrayEquals("drawing data before and after save is different", dgBytes, dgBytesAfterSave);
+            assertEquals(dgBytes.length, dgBytesAfterSave.length, "different size of drawing data before and after save");
+            assertArrayEquals(dgBytes, dgBytesAfterSave, "drawing data before and after save is different");
         }
     }
 
@@ -571,11 +549,10 @@ public class TestDrawingAggregate {
             List<RecordBase> records = isheet.getRecords();
 
             // the sheet's drawing is not aggregated
-            assertEquals("wrong size of sheet records stream", 315, records.size());
+            assertEquals(315, records.size(), "wrong size of sheet records stream");
             // the last record before the drawing block
-            assertTrue(
-                    "records.get(21) is expected to be RowRecordsAggregate but was " + records.get(21).getClass().getSimpleName(),
-                    records.get(21) instanceof RowRecordsAggregate);
+            assertTrue(records.get(21) instanceof RowRecordsAggregate,
+                "records.get(21) is expected to be RowRecordsAggregate but was " + records.get(21).getClass().getSimpleName());
 
             // records to be aggregated
             List<RecordBase> dgRecords = records.subList(22, 300);
@@ -594,9 +571,7 @@ public class TestDrawingAggregate {
             byte[] dgBytes = toByteArray(dgRecords);
 
             // the first record after the drawing block
-            assertTrue(
-                    "records.get(300) is expected to be Window2",
-                    records.get(300) instanceof WindowTwoRecord);
+            assertTrue(records.get(300) instanceof WindowTwoRecord, "records.get(300) is expected to be Window2");
 
             // aggregate drawing records.
             // The subrange [19, 299] is expected to be replaced with a EscherAggregate object
@@ -604,18 +579,17 @@ public class TestDrawingAggregate {
             int loc = isheet.aggregateDrawingRecords(drawingManager, false);
             EscherAggregate agg = (EscherAggregate) records.get(loc);
 
-            assertEquals("wrong size of the aggregated sheet records stream", 38, records.size());
-            assertTrue(
-                    "records.get(21) is expected to be RowRecordsAggregate but was " + records.get(21).getClass().getSimpleName(),
-                    records.get(21) instanceof RowRecordsAggregate);
-            assertTrue("records.get(22) is expected to be EscherAggregate but was " + records.get(22).getClass().getSimpleName(),
-                       records.get(22) instanceof EscherAggregate);
-            assertTrue("records.get(23) is expected to be Window2 but was " + records.get(23).getClass().getSimpleName(),
-                       records.get(23) instanceof WindowTwoRecord);
+            assertEquals(38, records.size(), "wrong size of the aggregated sheet records stream");
+            assertTrue(records.get(21) instanceof RowRecordsAggregate,
+                "records.get(21) is expected to be RowRecordsAggregate but was " + records.get(21).getClass().getSimpleName());
+            assertTrue(records.get(22) instanceof EscherAggregate,
+                "records.get(22) is expected to be EscherAggregate but was " + records.get(22).getClass().getSimpleName());
+            assertTrue(records.get(23) instanceof WindowTwoRecord,
+                "records.get(23) is expected to be Window2 but was " + records.get(23).getClass().getSimpleName());
 
             byte[] dgBytesAfterSave = agg.serialize();
-            assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
-            assertArrayEquals("drawing data before and after save is different", dgBytes, dgBytesAfterSave);
+            assertEquals(dgBytes.length, dgBytesAfterSave.length, "different size of drawing data before and after save");
+            assertArrayEquals(dgBytes, dgBytesAfterSave, "drawing data before and after save is different");
         }
     }
 
@@ -739,7 +713,7 @@ public class TestDrawingAggregate {
         };
 
         int[] actualSids = dgRecords.stream().mapToInt(Record::getSid).toArray();
-        assertArrayEquals("unexpected record.sid", expectedSids, actualSids);
+        assertArrayEquals(expectedSids, actualSids, "unexpected record.sid");
 
         DrawingManager2 drawingManager = new DrawingManager2(new EscherDggRecord());
 
@@ -752,14 +726,14 @@ public class TestDrawingAggregate {
 
 
         sheet.aggregateDrawingRecords(drawingManager, false);
-        assertEquals("drawing was not fully aggregated", 2, records.size());
-        assertTrue("expected EscherAggregate", records.get(0) instanceof EscherAggregate);
-        assertTrue("expected EOFRecord", records.get(1) instanceof EOFRecord);
+        assertEquals(2, records.size(), "drawing was not fully aggregated");
+        assertTrue(records.get(0) instanceof EscherAggregate, "expected EscherAggregate");
+        assertTrue(records.get(1) instanceof EOFRecord, "expected EOFRecord");
         EscherAggregate agg = (EscherAggregate) records.get(0);
 
         byte[] dgBytesAfterSave = agg.serialize();
-        assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
-        assertArrayEquals("drawing data before and after save is different", dgBytes, dgBytesAfterSave);
+        assertEquals(dgBytes.length, dgBytesAfterSave.length, "different size of drawing data before and after save");
+        assertArrayEquals(dgBytes, dgBytesAfterSave, "drawing data before and after save is different");
     }
 
     @Test
@@ -905,7 +879,7 @@ public class TestDrawingAggregate {
         };
 
         int[] actualSids = dgRecords.stream().mapToInt(Record::getSid).toArray();
-        assertArrayEquals("unexpected record.sid", expectedSids, actualSids);
+        assertArrayEquals(expectedSids, actualSids, "unexpected record.sid");
 
         DrawingManager2 drawingManager = new DrawingManager2(new EscherDggRecord());
 
@@ -917,14 +891,14 @@ public class TestDrawingAggregate {
         records.add(EOFRecord.instance);
 
         sheet.aggregateDrawingRecords(drawingManager, false);
-        assertEquals("drawing was not fully aggregated", 2, records.size());
-        assertTrue("expected EscherAggregate", records.get(0) instanceof EscherAggregate);
-        assertTrue("expected EOFRecord", records.get(1) instanceof EOFRecord);
+        assertEquals(2, records.size(), "drawing was not fully aggregated");
+        assertTrue(records.get(0) instanceof EscherAggregate, "expected EscherAggregate");
+        assertTrue(records.get(1) instanceof EOFRecord, "expected EOFRecord");
 
         EscherAggregate agg = (EscherAggregate) records.get(0);
 
         byte[] dgBytesAfterSave = agg.serialize();
-        assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
-        assertArrayEquals("drawing data brefpore and after save is different", dgBytes, dgBytesAfterSave);
+        assertEquals(dgBytes.length, dgBytesAfterSave.length, "different size of drawing data before and after save");
+        assertArrayEquals(dgBytes, dgBytesAfterSave, "drawing data brefpore and after save is different");
     }
 }

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingManager2.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingManager2.java?rev=1884783&r1=1884782&r2=1884783&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingManager2.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingManager2.java Thu Dec 24 18:42:29 2020
@@ -17,18 +17,18 @@
 
 package org.apache.poi.hssf.model;
 
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 import org.apache.poi.ddf.EscherDgRecord;
 import org.apache.poi.ddf.EscherDggRecord;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
 
 public final class TestDrawingManager2 {
     private DrawingManager2 drawingManager2;
     private EscherDggRecord dgg;
 
-    @Before
+    @BeforeEach
     public void setUp() {
         dgg = new EscherDggRecord();
         dgg.setFileIdClusters( new EscherDggRecord.FileIdCluster[0] );

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingShapes.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingShapes.java?rev=1884783&r1=1884782&r2=1884783&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingShapes.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/model/TestDrawingShapes.java Thu Dec 24 18:42:29 2020
@@ -17,13 +17,13 @@
 
 package org.apache.poi.hssf.model;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertSame;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertSame;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import java.io.IOException;
 import java.util.List;
@@ -60,12 +60,12 @@ import org.apache.poi.hssf.usermodel.HSS
 import org.apache.poi.ss.usermodel.ClientAnchor.AnchorType;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.util.HexDump;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
 
 
 /**
  * Test escher drawing
- * 
+ *
  * optionally the system setting "poi.deserialize.escher" can be set to {@code true}
  */
 public class TestDrawingShapes {
@@ -107,7 +107,7 @@ public class TestDrawingShapes {
         assertEquals(HSSFShape.LINEWIDTH_DEFAULT, shape.getLineWidth());
         assertEquals(HSSFShape.LINESTYLE_SOLID, shape.getLineStyle());
         assertFalse(shape.isNoFill());
-        
+
         EscherOptRecord opt = shape.getOptRecord();
 
         assertEquals(7, opt.getEscherProperties().size());
@@ -284,7 +284,7 @@ public class TestDrawingShapes {
         assertFalse(shape.isNoFill());
         assertEquals(shape.getLineStyle(), HSSFShape.LINESTYLE_DASHDOTGEL);
         assertEquals(shape.getLineStyleColor(), 0x616161);
-        assertEquals(HexDump.toHex(shape.getFillColor()), shape.getFillColor(), 0x2CE03D);
+        assertEquals(shape.getFillColor(), 0x2CE03D, HexDump.toHex(shape.getFillColor()));
         assertEquals(shape.getLineWidth(), HSSFShape.LINEWIDTH_ONE_PT * 2);
         assertEquals(shape.getString().getString(), "POItest");
         assertEquals(shape.getRotationDegree(), 27);
@@ -307,8 +307,8 @@ public class TestDrawingShapes {
 
         EscherAggregate agg1 = HSSFTestHelper.getEscherAggregate(patriarch1);
         // last shape ID cached in EscherDgRecord
-        EscherDgRecord dg1 =
-                agg1.getEscherContainer().getChildById(EscherDgRecord.RECORD_ID);
+        EscherDgRecord dg1 = agg1.getEscherContainer().getChildById(EscherDgRecord.RECORD_ID);
+        assertNotNull(dg1);
         assertEquals(1026, dg1.getLastMSOSPID());
 
         // iterate over shapes and check shapeId
@@ -319,14 +319,17 @@ public class TestDrawingShapes {
 
         EscherSpRecord sp0 =
                 ((EscherContainerRecord) spgrContainer.getChild(0)).getChildById(EscherSpRecord.RECORD_ID);
+        assertNotNull(sp0);
         assertEquals(1024, sp0.getShapeId());
 
         EscherSpRecord sp1 =
                 ((EscherContainerRecord) spgrContainer.getChild(1)).getChildById(EscherSpRecord.RECORD_ID);
+        assertNotNull(sp1);
         assertEquals(1025, sp1.getShapeId());
 
         EscherSpRecord sp2 =
                 ((EscherContainerRecord) spgrContainer.getChild(2)).getChildById(EscherSpRecord.RECORD_ID);
+        assertNotNull(sp2);
         assertEquals(1026, sp2.getShapeId());
         wb2.close();
     }
@@ -380,22 +383,23 @@ public class TestDrawingShapes {
         assertSame(opt1, opt2);
         wb.close();
     }
-    
+
     @Test
     public void testCorrectOrderInOptRecord() throws IOException{
         HSSFWorkbook wb = new HSSFWorkbook();
-        
+
         HSSFSheet sheet = wb.createSheet();
         HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
 
         HSSFTextbox textbox = patriarch.createTextbox(new HSSFClientAnchor());
         EscherOptRecord opt = HSSFTestHelper.getOptRecord(textbox);
-        
+
         String opt1Str = opt.toXml();
 
         textbox.setFillColor(textbox.getFillColor());
         EscherContainerRecord container = HSSFTestHelper.getEscherContainer(textbox);
         EscherOptRecord optRecord = container.getChildById(EscherOptRecord.RECORD_ID);
+        assertNotNull(optRecord);
         assertEquals(opt1Str, optRecord.toXml());
         textbox.setLineStyle(textbox.getLineStyle());
         assertEquals(opt1Str, optRecord.toXml());
@@ -689,7 +693,7 @@ public class TestDrawingShapes {
     @Test
     public void testShapeContainerImplementsIterable() throws IOException {
         HSSFWorkbook wb = new HSSFWorkbook();
-        
+
         HSSFSheet sheet = wb.createSheet();
         HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
 
@@ -737,13 +741,13 @@ public class TestDrawingShapes {
         assertEquals(patriarch.getChildren().size(), 0);
         wb2.close();
     }
-    
+
     @Test
     public void testBug45312() throws Exception {
         try (HSSFWorkbook wb = new HSSFWorkbook()) {
             HSSFSheet sheet = wb.createSheet();
             HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
-    
+
             {
                 HSSFClientAnchor a1 = new HSSFClientAnchor();
                 a1.setAnchor( (short)1, 1, 0, 0, (short) 1, 1, 512, 100);
@@ -771,7 +775,7 @@ public class TestDrawingShapes {
                 shape1.setFlipHorizontal(true);
                 shape1.setShapeType(HSSFSimpleShape.OBJECT_TYPE_LINE);
             }
-            
+
             checkWorkbookBack(wb);
         }
     }
@@ -779,13 +783,13 @@ public class TestDrawingShapes {
     private void checkWorkbookBack(HSSFWorkbook wb) throws IOException {
         HSSFWorkbook wbBack = HSSFTestDataSamples.writeOutAndReadBack(wb);
         assertNotNull(wbBack);
-        
+
         HSSFSheet sheetBack = wbBack.getSheetAt(0);
         assertNotNull(sheetBack);
-        
+
         HSSFPatriarch patriarchBack = sheetBack.getDrawingPatriarch();
         assertNotNull(patriarchBack);
-        
+
         List<HSSFShape> children = patriarchBack.getChildren();
         assertEquals(4, children.size());
         HSSFShape hssfShape = children.get(0);
@@ -843,7 +847,7 @@ public class TestDrawingShapes {
         assertEquals(2, cAnchor.getCol2());
         assertEquals(2, cAnchor.getRow1());
         assertEquals(2, cAnchor.getRow2());
-        
+
         wbBack.close();
     }
 }

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/model/TestEscherRecordFactory.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/model/TestEscherRecordFactory.java?rev=1884783&r1=1884782&r2=1884783&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/model/TestEscherRecordFactory.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/model/TestEscherRecordFactory.java Thu Dec 24 18:42:29 2020
@@ -17,17 +17,18 @@
 
 package org.apache.poi.hssf.model;
 
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
+import static org.apache.poi.ddf.DefaultEscherRecordFactory.isContainer;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.util.List;
 import java.util.Random;
 
-import org.apache.poi.ddf.DefaultEscherRecordFactory;
 import org.apache.poi.ddf.EscherContainerRecord;
 import org.apache.poi.ddf.EscherTextboxRecord;
 import org.apache.poi.hssf.HSSFTestDataSamples;
@@ -37,7 +38,7 @@ import org.apache.poi.hssf.record.Record
 import org.apache.poi.hssf.usermodel.HSSFSheet;
 import org.apache.poi.hssf.usermodel.HSSFTestHelper;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
 
 public class TestEscherRecordFactory {
 
@@ -57,30 +58,30 @@ public class TestEscherRecordFactory {
     @Test
     public void testDetectContainer() {
         Random rnd = new Random();
-        assertTrue(DefaultEscherRecordFactory.isContainer((short) 0x0, EscherContainerRecord.DG_CONTAINER));
-        assertTrue(DefaultEscherRecordFactory.isContainer((short) 0x0, EscherContainerRecord.SOLVER_CONTAINER));
-        assertTrue(DefaultEscherRecordFactory.isContainer((short) 0x0, EscherContainerRecord.SP_CONTAINER));
-        assertTrue(DefaultEscherRecordFactory.isContainer((short) 0x0, EscherContainerRecord.DGG_CONTAINER));
-        assertTrue(DefaultEscherRecordFactory.isContainer((short) 0x0, EscherContainerRecord.BSTORE_CONTAINER));
-        assertTrue(DefaultEscherRecordFactory.isContainer((short) 0x0, EscherContainerRecord.SPGR_CONTAINER));
+        assertTrue(isContainer((short) 0x0, EscherContainerRecord.DG_CONTAINER));
+        assertTrue(isContainer((short) 0x0, EscherContainerRecord.SOLVER_CONTAINER));
+        assertTrue(isContainer((short) 0x0, EscherContainerRecord.SP_CONTAINER));
+        assertTrue(isContainer((short) 0x0, EscherContainerRecord.DGG_CONTAINER));
+        assertTrue(isContainer((short) 0x0, EscherContainerRecord.BSTORE_CONTAINER));
+        assertTrue(isContainer((short) 0x0, EscherContainerRecord.SPGR_CONTAINER));
 
-        for (Short i=EscherContainerRecord.DGG_CONTAINER; i<= EscherContainerRecord.SOLVER_CONTAINER; i++){
-            assertTrue(DefaultEscherRecordFactory.isContainer(Integer.valueOf(rnd.nextInt(Short.MAX_VALUE)).shortValue(), i));
+        for (short i=EscherContainerRecord.DGG_CONTAINER; i<= EscherContainerRecord.SOLVER_CONTAINER; i++){
+            assertTrue(isContainer(Integer.valueOf(rnd.nextInt(Short.MAX_VALUE)).shortValue(), i));
         }
 
-        assertFalse(DefaultEscherRecordFactory.isContainer((short) 0x0, Integer.valueOf(EscherContainerRecord.DGG_CONTAINER - 1).shortValue()));
-        assertFalse(DefaultEscherRecordFactory.isContainer((short) 0x0, Integer.valueOf(EscherContainerRecord.SOLVER_CONTAINER + 1).shortValue()));
+        assertFalse(isContainer((short) 0x0, Integer.valueOf(EscherContainerRecord.DGG_CONTAINER - 1).shortValue()));
+        assertFalse(isContainer((short) 0x0, Integer.valueOf(EscherContainerRecord.SOLVER_CONTAINER + 1).shortValue()));
 
-        assertTrue(DefaultEscherRecordFactory.isContainer((short) 0x000F, Integer.valueOf(EscherContainerRecord.DGG_CONTAINER - 1).shortValue()));
-        assertTrue(DefaultEscherRecordFactory.isContainer((short) 0xFFFF, Integer.valueOf(EscherContainerRecord.DGG_CONTAINER - 1).shortValue()));
-        assertFalse(DefaultEscherRecordFactory.isContainer((short) 0x000C, Integer.valueOf(EscherContainerRecord.DGG_CONTAINER - 1).shortValue()));
-        assertFalse(DefaultEscherRecordFactory.isContainer((short) 0xCCCC, Integer.valueOf(EscherContainerRecord.DGG_CONTAINER - 1).shortValue()));
-        assertFalse(DefaultEscherRecordFactory.isContainer((short) 0x000F, EscherTextboxRecord.RECORD_ID));
-        assertFalse(DefaultEscherRecordFactory.isContainer((short) 0xCCCC, EscherTextboxRecord.RECORD_ID));
+        assertTrue(isContainer((short) 0x000F, Integer.valueOf(EscherContainerRecord.DGG_CONTAINER - 1).shortValue()));
+        assertTrue(isContainer((short) 0xFFFF, Integer.valueOf(EscherContainerRecord.DGG_CONTAINER - 1).shortValue()));
+        assertFalse(isContainer((short) 0x000C, Integer.valueOf(EscherContainerRecord.DGG_CONTAINER - 1).shortValue()));
+        assertFalse(isContainer((short) 0xCCCC, Integer.valueOf(EscherContainerRecord.DGG_CONTAINER - 1).shortValue()));
+        assertFalse(isContainer((short) 0x000F, EscherTextboxRecord.RECORD_ID));
+        assertFalse(isContainer((short) 0xCCCC, EscherTextboxRecord.RECORD_ID));
     }
 
     @Test
-    public void testDgContainerMustBeRootOfHSSFSheetEscherRecords() throws IOException {
+    public void testDgContainerMustBeRootOfHSSFSheetEscherRecords() {
         HSSFWorkbook wb = HSSFTestDataSamples.openSampleWorkbook("47251.xls");
         HSSFSheet sh = wb.getSheetAt(0);
         InternalSheet ish = HSSFTestHelper.getSheetForTest(sh);
@@ -90,12 +91,14 @@ public class TestEscherRecordFactory {
         byte[] dgBytes = toByteArray(dgRecords);
         sh.getDrawingPatriarch();
         EscherAggregate agg = (EscherAggregate) ish.findFirstRecordBySid(EscherAggregate.sid);
+        assertNotNull(agg);
         assertTrue(agg.getEscherRecords().get(0) instanceof EscherContainerRecord);
         assertEquals(EscherContainerRecord.DG_CONTAINER, agg.getEscherRecords().get(0).getRecordId());
         assertEquals((short) 0x0, agg.getEscherRecords().get(0).getOptions());
         agg = (EscherAggregate) ish.findFirstRecordBySid(EscherAggregate.sid);
+        assertNotNull(agg);
         byte[] dgBytesAfterSave = agg.serialize();
-        assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
-        assertArrayEquals("drawing data before and after save is different", dgBytes, dgBytesAfterSave);
+        assertEquals(dgBytes.length, dgBytesAfterSave.length, "different size of drawing data before and after save");
+        assertArrayEquals(dgBytes, dgBytesAfterSave, "drawing data before and after save is different");
     }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org