Skip to content

Commit 033cc87

Browse files
committed
test: add test case for reading Excel formula
1 parent 4305669 commit 033cc87

File tree

3 files changed

+32
-11
lines changed

3 files changed

+32
-11
lines changed

fastexcel/src/test/java/cn/idev/excel/celldata/CellDataDataTest.java

Lines changed: 32 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,40 @@
11
package cn.idev.excel.celldata;
22

33
import cn.idev.excel.FastExcel;
4+
import cn.idev.excel.context.AnalysisContext;
45
import cn.idev.excel.enums.CellDataTypeEnum;
6+
import cn.idev.excel.event.AnalysisEventListener;
57
import cn.idev.excel.metadata.data.FormulaData;
68
import cn.idev.excel.metadata.data.WriteCellData;
79
import cn.idev.excel.util.DateUtils;
810
import cn.idev.excel.util.TestFileUtil;
9-
import java.io.File;
10-
import java.math.BigDecimal;
11-
import java.util.ArrayList;
12-
import java.util.List;
11+
import lombok.extern.slf4j.Slf4j;
12+
import org.junit.jupiter.api.Assertions;
1313
import org.junit.jupiter.api.BeforeAll;
1414
import org.junit.jupiter.api.MethodOrderer;
1515
import org.junit.jupiter.api.Test;
1616
import org.junit.jupiter.api.TestMethodOrder;
1717

18-
/**
19-
*
20-
*/
18+
import java.io.File;
19+
import java.math.BigDecimal;
20+
import java.util.ArrayList;
21+
import java.util.List;
22+
2123
@TestMethodOrder(MethodOrderer.MethodName.class)
24+
@Slf4j
2225
public class CellDataDataTest {
2326

2427
private static File file07;
2528
private static File file03;
2629
private static File fileCsv;
30+
private static File file07_formula;
2731

2832
@BeforeAll
2933
public static void init() {
3034
file07 = TestFileUtil.createNewFile("cellData07.xlsx");
3135
file03 = TestFileUtil.createNewFile("cellData03.xls");
32-
fileCsv = TestFileUtil.createNewFile("cellDataCsv.csv");
36+
fileCsv = TestFileUtil.readFile("cellDataCsv.csv");
37+
file07_formula = TestFileUtil.readFile("celldata" + File.separator + "celldata_formula.xlsx");
3338
}
3439

3540
@Test
@@ -47,6 +52,25 @@ public void t03ReadAndWriteCsv() throws Exception {
4752
readAndWrite(fileCsv);
4853
}
4954

55+
@Test
56+
public void t04ReadFormula07() throws Exception {
57+
FastExcel.read(file07_formula, CellDataReadData.class, new AnalysisEventListener<CellDataReadData>() {
58+
@Override
59+
public void invoke(CellDataReadData data, AnalysisContext context) {
60+
Assertions.assertNotNull(
61+
data.getFormulaValue().getFormulaData().getFormulaValue());
62+
log.info(
63+
"row formula: {}",
64+
data.getFormulaValue().getFormulaData().getFormulaValue());
65+
}
66+
67+
@Override
68+
public void doAfterAllAnalysed(AnalysisContext context) {
69+
}
70+
})
71+
.doReadAll();
72+
}
73+
5074
private void readAndWrite(File file) throws Exception {
5175
FastExcel.write(file, CellDataWriteData.class).sheet().doWrite(data());
5276
FastExcel.read(file, CellDataReadData.class, new CellDataDataListener())

fastexcel/src/test/java/cn/idev/excel/celldata/CellDataReadData.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,6 @@
66
import lombok.Getter;
77
import lombok.Setter;
88

9-
/**
10-
*
11-
*/
129
@Getter
1310
@Setter
1411
@EqualsAndHashCode
10.9 KB
Binary file not shown.

0 commit comments

Comments
 (0)