소스 검색

Unit test for #55747

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1693674 13f79535-47bb-0310-9956-ffa450edef68
tags/REL_3_13_FINAL
Nick Burch 9 년 전
부모
커밋
044151f658
1개의 변경된 파일31개의 추가작업 그리고 0개의 파일을 삭제
  1. 31
    0
      src/testcases/org/apache/poi/ss/usermodel/BaseTestBugzillaIssues.java

+ 31
- 0
src/testcases/org/apache/poi/ss/usermodel/BaseTestBugzillaIssues.java 파일 보기

@@ -1120,4 +1120,35 @@ public abstract class BaseTestBugzillaIssues {
assertTrue("HSSF will currently return empty string, XSSF/SXSSF will return null, but had: " + value,
value == null || value.length() == 0);
}
/**
* Formulas with Nested Ifs, or If with text functions like
* Mid in it, can give #VALUE in Excel
*/
@Test
public void bug55747() {
Workbook wb = _testDataProvider.createWorkbook();
FormulaEvaluator ev = wb.getCreationHelper().createFormulaEvaluator();
Sheet s = wb.createSheet();
Row row = s.createRow(0);
row.createCell(0).setCellValue("abc");
row.createCell(1).setCellValue("");
row.createCell(2).setCellValue(3);

Cell cell = row.createCell(5);
cell.setCellFormula("IF(A1<>\"\",MID(A1,1,2),\" \")");
ev.evaluateAll();
assertEquals("ab", cell.getStringCellValue());
cell = row.createCell(6);
cell.setCellFormula("IF(B1<>\"\",MID(A1,1,2),\"empty\")");
ev.evaluateAll();
assertEquals("empty", cell.getStringCellValue());
cell = row.createCell(7);
cell.setCellFormula("IF(A1<>\"\",IF(C1<>\"\",MID(A1,1,2),\"c1\"),\"c2\")");
ev.evaluateAll();
assertEquals("ab", cell.getStringCellValue());
}
}

Loading…
취소
저장