adding test for formula parser
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@352583 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
54a2c116c0
commit
f68bee6bfd
@ -0,0 +1,64 @@
|
||||
package org.apache.poi.hssf.record.formula;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
/**
|
||||
* Test the low level formula parser functionality. High level tests are to
|
||||
* be done via usermodel/HSSFCell.setFormulaValue() .
|
||||
*/
|
||||
public class TestFormulaParser extends TestCase {
|
||||
|
||||
public TestFormulaParser(String name) {
|
||||
super(name);
|
||||
}
|
||||
public void setUp(){
|
||||
|
||||
}
|
||||
|
||||
public void tearDown() {
|
||||
|
||||
}
|
||||
|
||||
public void testSimpleFormula() {
|
||||
FormulaParser fp = new FormulaParser("2+2;");
|
||||
fp.parse();
|
||||
Ptg[] ptgs = fp.getRPNPtg();
|
||||
assertTrue("three tokens expected, got "+ptgs.length,ptgs.length == 3);
|
||||
}
|
||||
public void testFormulaWithSpace1() {
|
||||
FormulaParser fp = new FormulaParser(" 2 + 2 ;");
|
||||
fp.parse();
|
||||
Ptg[] ptgs = fp.getRPNPtg();
|
||||
assertTrue("three tokens expected, got "+ptgs.length,ptgs.length == 3);
|
||||
assertTrue("",(ptgs[0] instanceof IntPtg));
|
||||
assertTrue("",(ptgs[1] instanceof IntPtg));
|
||||
assertTrue("",(ptgs[2] instanceof AddPtg));
|
||||
|
||||
}
|
||||
|
||||
public void testFormulaWithSpace2() {
|
||||
Ptg[] ptgs;
|
||||
FormulaParser fp;
|
||||
fp = new FormulaParser("2+ sum( 3 , 4) ;");
|
||||
fp.parse();
|
||||
ptgs = fp.getRPNPtg();
|
||||
assertTrue("five tokens expected, got "+ptgs.length,ptgs.length == 5);
|
||||
}
|
||||
|
||||
public void testFormulaWithSpaceNRef() {
|
||||
Ptg[] ptgs;
|
||||
FormulaParser fp;
|
||||
fp = new FormulaParser("sum( A2:A3 );");
|
||||
fp.parse();
|
||||
ptgs = fp.getRPNPtg();
|
||||
assertTrue("two tokens expected, got "+ptgs.length,ptgs.length == 2);
|
||||
}
|
||||
|
||||
public static void main(String [] args) {
|
||||
System.out.println("Testing org.apache.poi.hssf.record.formula.FormulaParser");
|
||||
junit.textui.TestRunner.run(TestFormulaParser.class);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user