Search in sources :

Example 6 with OperationEvaluationContext

use of org.apache.poi.ss.formula.OperationEvaluationContext in project poi by apache.

the class TestBin2Dec method createContext.

private OperationEvaluationContext createContext() {
    HSSFWorkbook wb = new HSSFWorkbook();
    wb.createSheet();
    HSSFEvaluationWorkbook workbook = HSSFEvaluationWorkbook.create(wb);
    WorkbookEvaluator workbookEvaluator = new WorkbookEvaluator(workbook, new IStabilityClassifier() {

        @Override
        public boolean isCellFinal(int sheetIndex, int rowIndex, int columnIndex) {
            return true;
        }
    }, null);
    OperationEvaluationContext ctx = new OperationEvaluationContext(workbookEvaluator, workbook, 0, 0, 0, null);
    return ctx;
}
Also used : IStabilityClassifier(org.apache.poi.ss.formula.IStabilityClassifier) WorkbookEvaluator(org.apache.poi.ss.formula.WorkbookEvaluator) OperationEvaluationContext(org.apache.poi.ss.formula.OperationEvaluationContext) HSSFWorkbook(org.apache.poi.hssf.usermodel.HSSFWorkbook) HSSFEvaluationWorkbook(org.apache.poi.hssf.usermodel.HSSFEvaluationWorkbook)

Example 7 with OperationEvaluationContext

use of org.apache.poi.ss.formula.OperationEvaluationContext in project poi by apache.

the class TestDec2Hex method testWithErrorPlaces.

public void testWithErrorPlaces() {
    OperationEvaluationContext ctx = createContext();
    ValueEval[] args = new ValueEval[] { ctx.getRefEval(0, 0), ErrorEval.NULL_INTERSECTION };
    ValueEval result = new Dec2Hex().evaluate(args, -1, -1);
    assertEquals(ErrorEval.class, result.getClass());
    assertEquals(ErrorEval.NULL_INTERSECTION, result);
}
Also used : OperationEvaluationContext(org.apache.poi.ss.formula.OperationEvaluationContext) ValueEval(org.apache.poi.ss.formula.eval.ValueEval)

Example 8 with OperationEvaluationContext

use of org.apache.poi.ss.formula.OperationEvaluationContext in project poi by apache.

the class TestDec2Bin method testWithPlaces.

public void testWithPlaces() {
    OperationEvaluationContext ctx = createContext();
    ValueEval[] args = new ValueEval[] { ctx.getRefEval(0, 0), ctx.getRefEval(0, 1) };
    ValueEval result = new Dec2Bin().evaluate(args, ctx);
    assertEquals("Had: " + result, StringEval.class, result.getClass());
    // TODO: documentation and behavior do not match here!
    assertEquals("1101", ((StringEval) result).getStringValue());
}
Also used : OperationEvaluationContext(org.apache.poi.ss.formula.OperationEvaluationContext) ValueEval(org.apache.poi.ss.formula.eval.ValueEval)

Example 9 with OperationEvaluationContext

use of org.apache.poi.ss.formula.OperationEvaluationContext in project poi by apache.

the class TestDec2Hex method testWithNegativePlaces.

public void testWithNegativePlaces() {
    OperationEvaluationContext ctx = createContext();
    ValueEval[] args = new ValueEval[] { ctx.getRefEval(0, 0), ctx.getRefEval(0, 2) };
    ValueEval result = new Dec2Hex().evaluate(args, -1, -1);
    assertEquals(ErrorEval.class, result.getClass());
    assertEquals(ErrorEval.NUM_ERROR, result);
}
Also used : OperationEvaluationContext(org.apache.poi.ss.formula.OperationEvaluationContext) ValueEval(org.apache.poi.ss.formula.eval.ValueEval)

Example 10 with OperationEvaluationContext

use of org.apache.poi.ss.formula.OperationEvaluationContext in project poi by apache.

the class TestDec2Hex method testWithTooManyParamsIntInt.

public void testWithTooManyParamsIntInt() {
    OperationEvaluationContext ctx = createContext();
    ValueEval[] args = new ValueEval[] { ctx.getRefEval(0, 0), ctx.getRefEval(0, 1), ctx.getRefEval(0, 1) };
    ValueEval result = new Dec2Hex().evaluate(args, -1, -1);
    assertEquals(ErrorEval.class, result.getClass());
    assertEquals(ErrorEval.VALUE_INVALID, result);
}
Also used : OperationEvaluationContext(org.apache.poi.ss.formula.OperationEvaluationContext) ValueEval(org.apache.poi.ss.formula.eval.ValueEval)

Aggregations

OperationEvaluationContext (org.apache.poi.ss.formula.OperationEvaluationContext)32 ValueEval (org.apache.poi.ss.formula.eval.ValueEval)27 HSSFWorkbook (org.apache.poi.hssf.usermodel.HSSFWorkbook)5 HSSFEvaluationWorkbook (org.apache.poi.hssf.usermodel.HSSFEvaluationWorkbook)4 IStabilityClassifier (org.apache.poi.ss.formula.IStabilityClassifier)4 WorkbookEvaluator (org.apache.poi.ss.formula.WorkbookEvaluator)4 Cell (org.apache.poi.ss.usermodel.Cell)2 Row (org.apache.poi.ss.usermodel.Row)2 Sheet (org.apache.poi.ss.usermodel.Sheet)2 TestHSSFWorkbook (org.apache.poi.hssf.usermodel.TestHSSFWorkbook)1 NumberEval (org.apache.poi.ss.formula.eval.NumberEval)1 FreeRefFunction (org.apache.poi.ss.formula.functions.FreeRefFunction)1 AggregatingUDFFinder (org.apache.poi.ss.formula.udf.AggregatingUDFFinder)1 DefaultUDFFinder (org.apache.poi.ss.formula.udf.DefaultUDFFinder)1 UDFFinder (org.apache.poi.ss.formula.udf.UDFFinder)1 Test (org.junit.Test)1