Author: kiwiwings
Date: Sat Jan 30 22:58:14 2021
New Revision: 1886070

URL: http://svn.apache.org/viewvc?rev=1886070&view=rev
Log:
Sonar fixes
add asserts to tests

Added:
    poi/trunk/src/testcases/org/apache/poi/ss/formula/udf/TestUDFFinder.java
      - copied, changed from r1886069, 
poi/trunk/src/testcases/org/apache/poi/ss/formula/udf/BaseTestUDFFinder.java
Removed:
    poi/trunk/src/testcases/org/apache/poi/ss/formula/udf/BaseTestUDFFinder.java
    
poi/trunk/src/testcases/org/apache/poi/ss/formula/udf/TestAggregatingUDFFinder.java
    
poi/trunk/src/testcases/org/apache/poi/ss/formula/udf/TestDefaultUDFFinder.java
Modified:
    
poi/trunk/src/ooxml/testcases/org/apache/poi/ss/tests/formula/functions/TestVlookup.java
    
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/streaming/TestSXSSFWorkbook.java
    
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestUnfixedBugs.java
    
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFComment.java
    
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFDrawing.java
    
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java
    poi/trunk/src/testcases/org/apache/poi/hssf/dev/TestBiffViewer.java
    poi/trunk/src/testcases/org/apache/poi/hssf/dev/TestReSave.java
    poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFPicture.java
    poi/trunk/src/testcases/org/apache/poi/poifs/dev/TestPOIFSDump.java
    poi/trunk/src/testcases/org/apache/poi/ss/format/TestCellFormat.java
    
poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestBugzillaIssues.java

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/ss/tests/formula/functions/TestVlookup.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/ss/tests/formula/functions/TestVlookup.java?rev=1886070&r1=1886069&r2=1886070&view=diff
==============================================================================
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/ss/tests/formula/functions/TestVlookup.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/ss/tests/formula/functions/TestVlookup.java
 Sat Jan 30 22:58:14 2021
@@ -33,10 +33,13 @@ import org.apache.poi.ss.usermodel.Workb
 import org.apache.poi.xssf.XSSFTestDataSamples;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.parallel.Execution;
+import org.junit.jupiter.api.parallel.ExecutionMode;
 
 /**
  * Test the VLOOKUP function
  */
+@Execution(ExecutionMode.CONCURRENT)
 class TestVlookup {
 
     @Test

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/streaming/TestSXSSFWorkbook.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/streaming/TestSXSSFWorkbook.java?rev=1886070&r1=1886069&r2=1886070&view=diff
==============================================================================
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/streaming/TestSXSSFWorkbook.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/streaming/TestSXSSFWorkbook.java
 Sat Jan 30 22:58:14 2021
@@ -345,17 +345,16 @@ public final class TestSXSSFWorkbook ext
         wb2.close();
     }
 
-    @Disabled("currently writing the same sheet multiple times is not 
supported...")
     @Test
     void bug53515() throws Exception {
-        Workbook wb1 = new SXSSFWorkbook(10);
-        populateWorkbook(wb1);
-        saveTwice(wb1);
-        Workbook wb2 = new XSSFWorkbook();
-        populateWorkbook(wb2);
-        saveTwice(wb2);
-        wb2.close();
-        wb1.close();
+        try (Workbook wb1 = new SXSSFWorkbook(10)) {
+            populateWorkbook(wb1);
+            saveTwice(wb1);
+            try (Workbook wb2 = new XSSFWorkbook()) {
+                populateWorkbook(wb2);
+                saveTwice(wb2);
+            }
+        }
     }
 
     @Disabled("Crashes the JVM because of documented JVM behavior with 
concurrent writing/reading of zip-files, "

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestUnfixedBugs.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestUnfixedBugs.java?rev=1886070&r1=1886069&r2=1886070&view=diff
==============================================================================
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestUnfixedBugs.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestUnfixedBugs.java
 Sat Jan 30 22:58:14 2021
@@ -17,6 +17,7 @@
 
 package org.apache.poi.xssf.usermodel;
 
+import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertNull;
@@ -369,7 +370,7 @@ public final class TestUnfixedBugs {
 
             FormulaEvaluator formulaEvaluator = 
workbook.getCreationHelper().createFormulaEvaluator();
             formulaEvaluator.setIgnoreMissingWorkbooks(true);
-            formulaEvaluator.evaluateAll();
+            assertDoesNotThrow(formulaEvaluator::evaluateAll);
         }
     }
 

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFComment.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFComment.java?rev=1886070&r1=1886069&r2=1886070&view=diff
==============================================================================
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFComment.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFComment.java
 Sat Jan 30 22:58:14 2021
@@ -25,21 +25,17 @@ import static org.junit.jupiter.api.Asse
 import static org.junit.jupiter.api.Assertions.assertSame;
 import static org.junit.jupiter.api.Assertions.assertThrows;
 import static org.junit.jupiter.api.Assertions.assertTrue;
-import static org.junit.jupiter.api.Assertions.fail;
 
-import java.io.FileOutputStream;
 import java.io.IOException;
-import java.io.OutputStream;
 
+import com.microsoft.schemas.vml.CTShape;
 import org.apache.poi.hssf.usermodel.HSSFRichTextString;
 import org.apache.poi.ss.usermodel.BaseTestCellComment;
 import org.apache.poi.ss.usermodel.Cell;
 import org.apache.poi.ss.usermodel.ClientAnchor;
 import org.apache.poi.ss.usermodel.Comment;
 import org.apache.poi.ss.usermodel.CreationHelper;
-import org.apache.poi.ss.usermodel.Drawing;
 import org.apache.poi.ss.usermodel.IndexedColors;
-import org.apache.poi.ss.usermodel.RichTextString;
 import org.apache.poi.ss.usermodel.Row;
 import org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.Workbook;
@@ -50,13 +46,10 @@ import org.apache.poi.xssf.XSSFTestDataS
 import org.apache.poi.xssf.model.CommentsTable;
 import org.apache.poi.xssf.streaming.SXSSFWorkbook;
 import org.apache.xmlbeans.XmlObject;
-import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
 import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTComment;
 import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTRPrElt;
 
-import com.microsoft.schemas.vml.CTShape;
-
 public final class TestXSSFComment extends BaseTestCellComment  {
 
     private static final String TEST_RICHTEXTSTRING = "test richtextstring";
@@ -262,48 +255,6 @@ public final class TestXSSFComment exten
         }
     }
 
-    @Disabled("Used for manual testing with opening the resulting Workbook in 
Excel")
-    @Test
-    void testBug58175a() throws IOException {
-        try (Workbook wb = new SXSSFWorkbook()) {
-            Sheet sheet = wb.createSheet();
-
-            Row row = sheet.createRow(1);
-            Cell cell = row.createCell(3);
-
-            cell.setCellValue("F4");
-
-            Drawing<?> drawing = sheet.createDrawingPatriarch();
-
-            CreationHelper factory = wb.getCreationHelper();
-
-            // When the comment box is visible, have it show in a 1x3 space
-            ClientAnchor anchor = factory.createClientAnchor();
-            anchor.setCol1(cell.getColumnIndex());
-            anchor.setCol2(cell.getColumnIndex() + 1);
-            anchor.setRow1(row.getRowNum());
-            anchor.setRow2(row.getRowNum() + 3);
-
-            // Create the comment and set the text+author
-            Comment comment = drawing.createCellComment(anchor);
-            RichTextString str = factory.createRichTextString("Hello, World!");
-            comment.setString(str);
-            comment.setAuthor("Apache POI");
-
-            /* fixed the problem as well
-             * comment.setColumn(cell.getColumnIndex());
-             * comment.setRow(cell.getRowIndex());
-             */
-
-            // Assign the comment to the cell
-            cell.setCellComment(comment);
-
-            try (OutputStream out = new 
FileOutputStream("C:\\temp\\58175.xlsx")) {
-                wb.write(out);
-            }
-        }
-    }
-
     @Test
     void testBug55814() throws IOException {
                try (Workbook wb = 
XSSFTestDataSamples.openSampleWorkbook("55814.xlsx")) {

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFDrawing.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFDrawing.java?rev=1886070&r1=1886069&r2=1886070&view=diff
==============================================================================
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFDrawing.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFDrawing.java
 Sat Jan 30 22:58:14 2021
@@ -16,9 +16,21 @@
 ==================================================================== */
 package org.apache.poi.xssf.usermodel;
 
+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.assertNotSame;
+import static org.junit.jupiter.api.Assertions.assertSame;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+import java.awt.Color;
+import java.io.IOException;
+import java.util.List;
+
+import org.apache.poi.hssf.HSSFTestDataSamples;
 import org.apache.poi.ooxml.POIXMLDocumentPart;
 import org.apache.poi.ooxml.POIXMLDocumentPart.RelationPart;
-import org.apache.poi.hssf.HSSFTestDataSamples;
 import org.apache.poi.openxml4j.opc.OPCPackage;
 import org.apache.poi.ss.usermodel.ClientAnchor;
 import org.apache.poi.ss.usermodel.FontUnderline;
@@ -33,19 +45,16 @@ import org.openxmlformats.schemas.drawin
 import org.openxmlformats.schemas.drawingml.x2006.main.STTextUnderlineType;
 import org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTDrawing;
 
-import java.awt.*;
-import java.io.IOException;
-import java.util.List;
-
-import static org.junit.jupiter.api.Assertions.*;
-
 class TestXSSFDrawing {
     @Test
     void bug54803() throws Exception {
         try (XSSFWorkbook wb = 
XSSFTestDataSamples.openSampleWorkbook("bug54803.xlsx")) {
             XSSFSheet sheet = wb.getSheetAt(0);
             sheet.createDrawingPatriarch();
-            XSSFTestDataSamples.writeOutAndReadBack(wb).close();
+            try (XSSFWorkbook wb2 = 
XSSFTestDataSamples.writeOutAndReadBack(wb)) {
+                XSSFSheet sheet2 = wb2.getSheetAt(0);
+                assertNotNull(sheet2.getDrawingPatriarch());
+            }
         }
     }
 

Modified: 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java?rev=1886070&r1=1886069&r2=1886070&view=diff
==============================================================================
--- 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java
 (original)
+++ 
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFPrintSetup.java
 Sat Jan 30 22:58:14 2021
@@ -17,11 +17,16 @@
 
 package org.apache.poi.xssf.usermodel;
 
+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 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.xssf.XSSFITestDataProvider;
+import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
 import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTPageMargins;
 import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTPageSetup;
@@ -30,10 +35,6 @@ import org.openxmlformats.schemas.spread
 import org.openxmlformats.schemas.spreadsheetml.x2006.main.STOrientation;
 import org.openxmlformats.schemas.spreadsheetml.x2006.main.STPageOrder;
 
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertFalse;
-import static org.junit.jupiter.api.Assertions.assertTrue;
-
 /**
  * Tests for {@link XSSFPrintSetup}
  */
@@ -290,7 +291,7 @@ class TestXSSFPrintSetup {
      * Open a file with print settings, save and check.
      * Then, change, save, read, check
      */
-    @Test
+    @Disabled
     void testRoundTrip() {
        // TODO
     }

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/dev/TestBiffViewer.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/dev/TestBiffViewer.java?rev=1886070&r1=1886069&r2=1886070&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/dev/TestBiffViewer.java 
(original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/dev/TestBiffViewer.java Sat Jan 
30 22:58:14 2021
@@ -28,7 +28,10 @@ import org.apache.poi.util.LocaleUtil;
 import org.apache.poi.util.NullOutputStream;
 import org.apache.poi.util.RecordFormatException;
 import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.parallel.Execution;
+import org.junit.jupiter.api.parallel.ExecutionMode;
 
+@Execution(ExecutionMode.CONCURRENT)
 class TestBiffViewer extends BaseTestIteratingXLS {
     @BeforeAll
     public static void setup() {

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/dev/TestReSave.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/dev/TestReSave.java?rev=1886070&r1=1886069&r2=1886070&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/dev/TestReSave.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/dev/TestReSave.java Sat Jan 30 
22:58:14 2021
@@ -30,7 +30,10 @@ import org.apache.poi.util.RecordFormatE
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.parallel.Execution;
+import org.junit.jupiter.api.parallel.ExecutionMode;
 
+@Execution(ExecutionMode.CONCURRENT)
 class TestReSave extends BaseTestIteratingXLS {
     @BeforeAll
     public static void setup() {

Modified: 
poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFPicture.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFPicture.java?rev=1886070&r1=1886069&r2=1886070&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFPicture.java 
(original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFPicture.java 
Sat Jan 30 22:58:14 2021
@@ -19,6 +19,7 @@ package org.apache.poi.hssf.usermodel;
 
 import static org.apache.poi.hssf.HSSFTestDataSamples.openSampleWorkbook;
 import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
 import java.io.IOException;
@@ -38,6 +39,7 @@ import org.apache.poi.ss.usermodel.Pictu
 import org.apache.poi.ss.usermodel.PictureData;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.function.Executable;
 
 final class TestHSSFPicture extends BaseTestPicture {
 
@@ -61,7 +63,7 @@ final class TestHSSFPicture extends Base
             byte[] pictureData = 
HSSFTestDataSamples.getTestDataFileContent("45829.png");
             int idx1 = wb.addPicture(pictureData, 
HSSFWorkbook.PICTURE_TYPE_PNG);
             HSSFPicture pic = p1.createPicture(new HSSFClientAnchor(), idx1);
-            pic.resize();
+            assertDoesNotThrow((Executable) pic::resize);
         }
     }
 

Modified: poi/trunk/src/testcases/org/apache/poi/poifs/dev/TestPOIFSDump.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/poifs/dev/TestPOIFSDump.java?rev=1886070&r1=1886069&r2=1886070&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/poifs/dev/TestPOIFSDump.java 
(original)
+++ poi/trunk/src/testcases/org/apache/poi/poifs/dev/TestPOIFSDump.java Sat Jan 
30 22:58:14 2021
@@ -16,29 +16,29 @@
 ==================================================================== */
 package org.apache.poi.poifs.dev;
 
+import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
 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 static org.junit.jupiter.api.Assertions.fail;
 
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileNotFoundException;
 import java.io.IOException;
-import java.io.OutputStream;
 import java.io.PrintStream;
 import java.io.UnsupportedEncodingException;
+import java.security.Permission;
 
 import org.apache.poi.hssf.HSSFTestDataSamples;
 import org.apache.poi.poifs.filesystem.NotOLE2FileException;
 import org.apache.poi.poifs.filesystem.OfficeXmlFileException;
 import org.apache.poi.poifs.filesystem.POIFSFileSystem;
 import org.apache.poi.poifs.property.PropertyTable;
+import org.apache.poi.util.NullPrintStream;
 import org.apache.poi.util.TempFile;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeAll;
-import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
 
 public class TestPOIFSDump {
@@ -47,12 +47,7 @@ public class TestPOIFSDump {
     @BeforeAll
     public static void setUp() throws UnsupportedEncodingException {
         SYSTEM = System.out;
-        System.setOut(new PrintStream(new OutputStream() {
-            @Override
-            public void write(int b) {
-
-            }
-        }, false, "UTF-8"));
+        System.setOut(new NullPrintStream());
     }
 
     @AfterAll
@@ -137,15 +132,10 @@ public class TestPOIFSDump {
 
     @Test
     void testMain() throws Exception {
-        POIFSDump.main(new String[] {
-                TEST_FILE
-        });
+        POIFSDump.main(new String[]{TEST_FILE});
 
         for(String option : DUMP_OPTIONS) {
-            POIFSDump.main(new String[]{
-                    option,
-                    TEST_FILE
-            });
+            assertDoesNotThrow(() -> POIFSDump.main(new String[]{option, 
TEST_FILE}));
         }
     }
     @Test
@@ -159,10 +149,26 @@ public class TestPOIFSDump {
         }
     }
 
-    @Disabled("Calls System.exit()")
     @Test
     void testMainNoArgs() throws Exception {
-        POIFSDump.main(new String[] {});
+        SecurityManager sm = System.getSecurityManager();
+        try {
+            System.setSecurityManager(new SecurityManager() {
+                @Override
+                public void checkExit(int status) {
+                    throw new SecurityException();
+                }
+
+                @Override
+                public void checkPermission(Permission perm) {
+                    // Allow other activities by default
+                }
+            });
+
+            assertThrows(SecurityException.class, () -> POIFSDump.main(new 
String[]{}));
+        } finally {
+            System.setSecurityManager(sm);
+        }
     }
 
     @Test

Modified: poi/trunk/src/testcases/org/apache/poi/ss/format/TestCellFormat.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ss/format/TestCellFormat.java?rev=1886070&r1=1886069&r2=1886070&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/ss/format/TestCellFormat.java 
(original)
+++ poi/trunk/src/testcases/org/apache/poi/ss/format/TestCellFormat.java Sat 
Jan 30 22:58:14 2021
@@ -73,9 +73,9 @@ class TestCellFormat {
     @Test
     void testSome() {
         JLabel l = new JLabel();
-        CellFormat fmt = CellFormat.getInstance(
-                "\"$\"#,##0.00_);[Red]\\(\"$\"#,##0.00\\)");
+        CellFormat fmt = 
CellFormat.getInstance("\"$\"#,##0.00_);[Red]\\(\"$\"#,##0.00\\)");
         fmt.apply(l, 1.1);
+        assertEquals("$1.10 ", l.getText());
     }
 
     @Test

Copied: 
poi/trunk/src/testcases/org/apache/poi/ss/formula/udf/TestUDFFinder.java (from 
r1886069, 
poi/trunk/src/testcases/org/apache/poi/ss/formula/udf/BaseTestUDFFinder.java)
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ss/formula/udf/TestUDFFinder.java?p2=poi/trunk/src/testcases/org/apache/poi/ss/formula/udf/TestUDFFinder.java&p1=poi/trunk/src/testcases/org/apache/poi/ss/formula/udf/BaseTestUDFFinder.java&r1=1886069&r2=1886070&rev=1886070&view=diff
==============================================================================
--- 
poi/trunk/src/testcases/org/apache/poi/ss/formula/udf/BaseTestUDFFinder.java 
(original)
+++ poi/trunk/src/testcases/org/apache/poi/ss/formula/udf/TestUDFFinder.java 
Sat Jan 30 22:58:14 2021
@@ -18,23 +18,41 @@ package org.apache.poi.ss.formula.udf;
 
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 
+import java.util.stream.Stream;
+
 import org.apache.poi.ss.formula.OperationEvaluationContext;
+import org.apache.poi.ss.formula.atp.AnalysisToolPak;
 import org.apache.poi.ss.formula.eval.ValueEval;
 import org.apache.poi.ss.formula.functions.FreeRefFunction;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
+
+public class TestUDFFinder {
+    public static Stream<Arguments> instances() {
+        UDFFinder notImplFinder = new DefaultUDFFinder(
+            new String[] { "NotImplemented" },
+            new FreeRefFunction[] { TestUDFFinder::notImplemented }
+        );
+
+        AggregatingUDFFinder aggUDF = new AggregatingUDFFinder(notImplFinder);
+        aggUDF.add(AnalysisToolPak.instance);
+
+        return Stream.of(
+            Arguments.of("NotImplemented", notImplFinder),
+            Arguments.of("BESSELJ", new 
AggregatingUDFFinder(AnalysisToolPak.instance)),
+            Arguments.of("BESSELJ", aggUDF)
+        );
+    }
 
-public class BaseTestUDFFinder {
-
-    protected UDFFinder _instance;
-    protected static final FreeRefFunction NotImplemented = new 
FreeRefFunction() {
-        @Override
-        public ValueEval evaluate(ValueEval[] args, OperationEvaluationContext 
ec) {
-            throw new RuntimeException("not implemented");
-        }
-    };
-
-    protected void confirmFindFunction(String name) {
-        FreeRefFunction func = _instance.findFunction(name);
+    @ParameterizedTest(name = "{0}")
+    @MethodSource("instances")
+    void confirmFindFunction(String functionName, UDFFinder instance) {
+        FreeRefFunction func = instance.findFunction(functionName);
         assertNotNull(func);
     }
 
+    private static ValueEval notImplemented(ValueEval[] args, 
OperationEvaluationContext ec) {
+        throw new RuntimeException("not implemented");
+    }
 }

Modified: 
poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestBugzillaIssues.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestBugzillaIssues.java?rev=1886070&r1=1886069&r2=1886070&view=diff
==============================================================================
--- 
poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestBugzillaIssues.java 
(original)
+++ 
poi/trunk/src/testcases/org/apache/poi/ss/usermodel/BaseTestBugzillaIssues.java 
Sat Jan 30 22:58:14 2021
@@ -42,6 +42,7 @@ import org.apache.poi.hssf.usermodel.HSS
 import org.apache.poi.ss.ITestDataProvider;
 import org.apache.poi.ss.SpreadsheetVersion;
 import org.apache.poi.ss.formula.FormulaParseException;
+import org.apache.poi.ss.util.CellAddress;
 import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.ss.util.CellRangeAddressList;
 import org.apache.poi.ss.util.PaneInformation;
@@ -1012,18 +1013,18 @@ public abstract class BaseTestBugzillaIs
 
             Name name1 = wb.createName();
             name1.setNameName("FMLA");
-            name1.setRefersToFormula("Sheet1!$B$3");
+            assertDoesNotThrow(() -> name1.setRefersToFormula("Sheet1!$B$3"));
         }
     }
 
     @Test
     void bug56981() throws IOException {
-        try (Workbook wb = _testDataProvider.createWorkbook()) {
-            CellStyle vertTop = wb.createCellStyle();
+        try (Workbook wb1 = _testDataProvider.createWorkbook()) {
+            CellStyle vertTop = wb1.createCellStyle();
             vertTop.setVerticalAlignment(VerticalAlignment.TOP);
-            CellStyle vertBottom = wb.createCellStyle();
+            CellStyle vertBottom = wb1.createCellStyle();
             vertBottom.setVerticalAlignment(VerticalAlignment.BOTTOM);
-            Sheet sheet = wb.createSheet("Sheet 1");
+            Sheet sheet = wb1.createSheet("Sheet 1");
             Row row = sheet.createRow(0);
             Cell top = row.createCell(0);
             Cell bottom = row.createCell(1);
@@ -1033,64 +1034,61 @@ public abstract class BaseTestBugzillaIs
             bottom.setCellValue("Bottom");
             bottom.setCellStyle(vertBottom);
             row.setHeightInPoints(85.75f); // make it obvious
+
+            try (Workbook wb2 = _testDataProvider.writeOutAndReadBack(wb1)) {
+                Cell cell = wb2.getSheetAt(0).getRow(0).getCell(1);
+                assertEquals(VerticalAlignment.BOTTOM, 
cell.getCellStyle().getVerticalAlignment());
+            }
         }
     }
 
     @Test
     void test57973() throws IOException {
-        try (Workbook wb = _testDataProvider.createWorkbook()) {
-
-            CreationHelper factory = wb.getCreationHelper();
-
-            Sheet sheet = wb.createSheet();
-            Drawing<?> drawing = sheet.createDrawingPatriarch();
-            ClientAnchor anchor = factory.createClientAnchor();
+        String[] vals = { "Cell0", "F4", "C3" };
+        try (Workbook wb1 = _testDataProvider.createWorkbook()) {
+            CreationHelper helper1 = wb1.getCreationHelper();
+            Sheet sheet1 = wb1.createSheet();
+            Drawing<?> drawing1 = sheet1.createDrawingPatriarch();
+
+            for (int i=0; i< vals.length; i++) {
+                Cell cell = sheet1.createRow(i).createCell(i);
+                cell.setCellValue(vals[i]);
+                ClientAnchor anchor = helper1.createClientAnchor();
+                anchor.setCol1(i);
+                anchor.setCol2(i);
+                anchor.setRow1(i);
+                anchor.setRow2(i);
+
+                Comment comment = drawing1.createCellComment(anchor);
+                RichTextString str = helper1.createRichTextString("Hello, 
World"+i);
+                comment.setString(str);
+                comment.setAuthor("Apache POI");
+                cell.setCellComment(comment);
+                comment.setColumn(i);
+                comment.setRow(i);
+
+                //apply custom font to the text in the comment
+                Font font = wb1.createFont();
+                font.setFontName("Arial");
+                font.setFontHeightInPoints((short) (14+i));
+                font.setBold(true);
+                font.setColor(IndexedColors.RED.getIndex());
+                str.applyFont(font);
+            }
 
-            Cell cell0 = sheet.createRow(0).createCell(0);
-            cell0.setCellValue("Cell0");
+            try (Workbook wb2 = _testDataProvider.writeOutAndReadBack(wb1)) {
+                Sheet sheet2 = wb2.getSheetAt(0);
 
-            Comment comment0 = drawing.createCellComment(anchor);
-            RichTextString str0 = factory.createRichTextString("Hello, 
World1!");
-            comment0.setString(str0);
-            comment0.setAuthor("Apache POI");
-            cell0.setCellComment(comment0);
-
-            anchor = factory.createClientAnchor();
-            anchor.setCol1(1);
-            anchor.setCol2(1);
-            anchor.setRow1(1);
-            anchor.setRow2(1);
-            Cell cell1 = sheet.createRow(3).createCell(5);
-            cell1.setCellValue("F4");
-            Comment comment1 = drawing.createCellComment(anchor);
-            RichTextString str1 = factory.createRichTextString("Hello, 
World2!");
-            comment1.setString(str1);
-            comment1.setAuthor("Apache POI");
-            cell1.setCellComment(comment1);
-
-            Cell cell2 = sheet.createRow(2).createCell(2);
-            cell2.setCellValue("C3");
-
-            anchor = factory.createClientAnchor();
-            anchor.setCol1(2);
-            anchor.setCol2(2);
-            anchor.setRow1(2);
-            anchor.setRow2(2);
-
-            Comment comment2 = drawing.createCellComment(anchor);
-            RichTextString str2 = factory.createRichTextString("XSSF can set 
cell comments");
-            //apply custom font to the text in the comment
-            Font font = wb.createFont();
-            font.setFontName("Arial");
-            font.setFontHeightInPoints((short) 14);
-            font.setBold(true);
-            font.setColor(IndexedColors.RED.getIndex());
-            str2.applyFont(font);
-
-            comment2.setString(str2);
-            comment2.setAuthor("Apache POI");
-            comment2.setColumn(2);
-            comment2.setRow(2);
+                for (int i=0; i<vals.length; i++) {
+                    Cell cell = sheet2.getRow(i).getCell(i);
+                    assertEquals(vals[i], cell.getStringCellValue());
+                    CellAddress cr = new CellAddress(cell);
+                    Comment comment = sheet2.getCellComment(cr);
+                    assertEquals("Apache POI", comment.getAuthor());
+                    RichTextString str = comment.getString();
+                    assertEquals("Hello, World"+i, str.getString());
+                }
+            }
         }
     }
 



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

Reply via email to