From: PJ Fanning Date: Sun, 5 Jun 2022 19:16:54 +0000 (+0000) Subject: support string cells in correl function X-Git-Tag: REL_5_2_3~242 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=abcf2c07e23b6bb8091a356ec7ebba24e9af7ebf;p=poi.git support string cells in correl function git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1901684 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/poi/src/test/java/org/apache/poi/ss/formula/functions/TestCorrel.java b/poi/src/test/java/org/apache/poi/ss/formula/functions/TestCorrel.java index b161dc9e76..68c3bea125 100644 --- a/poi/src/test/java/org/apache/poi/ss/formula/functions/TestCorrel.java +++ b/poi/src/test/java/org/apache/poi/ss/formula/functions/TestCorrel.java @@ -37,7 +37,7 @@ final class TestCorrel { //https://support.microsoft.com/en-us/office/correl-function-995dcef7-0c0a-4bed-a3fb-239d7b68ca92 @Test void testMicrosoftExample1() throws IOException { - try (HSSFWorkbook wb = initWorkbook1(false)) { + try (HSSFWorkbook wb = initWorkbook1()) { HSSFSheet sheet = wb.getSheetAt(0); HSSFRow row = sheet.getRow(0); HSSFCell cell = row.createCell(100); @@ -48,7 +48,7 @@ final class TestCorrel { @Test void testBlankValue() throws IOException { - try (HSSFWorkbook wb = initWorkbook1(true)) { + try (HSSFWorkbook wb = initWorkbook1(null)) { HSSFSheet sheet = wb.getSheetAt(0); HSSFRow row = sheet.getRow(0); HSSFCell cell = row.createCell(100); @@ -57,18 +57,29 @@ final class TestCorrel { } } - private HSSFWorkbook initWorkbook1(boolean blankRow4) { + @Test + void testStringValue() throws IOException { + try (HSSFWorkbook wb = initWorkbook1("string")) { + HSSFSheet sheet = wb.getSheetAt(0); + HSSFRow row = sheet.getRow(0); + HSSFCell cell = row.createCell(100); + HSSFFormulaEvaluator fe = new HSSFFormulaEvaluator(wb); + assertDouble(fe, cell, "CORREL(A2:A6,B2:B6)", 0.9984884738, 0.0000000005); + } + } + + private HSSFWorkbook initWorkbook1() { + return initWorkbook1(Double.valueOf(15)); + } + + private HSSFWorkbook initWorkbook1(Object row4Data2) { HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb.createSheet(); addRow(sheet, 0, "Data1", "Data2"); addRow(sheet, 1, 3, 9); addRow(sheet, 2, 2, 7); addRow(sheet, 3, 4, 12); - if (blankRow4) { - addRow(sheet, 4, 5); - } else { - addRow(sheet, 4, 5, 15); - } + addRow(sheet, 4, 5, row4Data2); addRow(sheet, 5, 6, 17); return wb; }