View | Details | Raw Unified | Return to bug 62162
Collapse All | Expand All

(-)TestIndirect.java (+32 lines)
Lines 20-25 Link Here
20
import static org.junit.Assert.assertEquals;
20
import static org.junit.Assert.assertEquals;
21
import static org.junit.Assert.fail;
21
import static org.junit.Assert.fail;
22
22
23
import java.io.IOException;
24
23
import org.apache.poi.hssf.usermodel.HSSFCell;
25
import org.apache.poi.hssf.usermodel.HSSFCell;
24
import org.apache.poi.hssf.usermodel.HSSFFormulaEvaluator;
26
import org.apache.poi.hssf.usermodel.HSSFFormulaEvaluator;
25
import org.apache.poi.hssf.usermodel.HSSFName;
27
import org.apache.poi.hssf.usermodel.HSSFName;
Lines 32-37 Link Here
32
import org.apache.poi.ss.usermodel.CellType;
34
import org.apache.poi.ss.usermodel.CellType;
33
import org.apache.poi.ss.usermodel.CellValue;
35
import org.apache.poi.ss.usermodel.CellValue;
34
import org.apache.poi.ss.usermodel.FormulaEvaluator;
36
import org.apache.poi.ss.usermodel.FormulaEvaluator;
37
import org.apache.poi.xssf.usermodel.XSSFCell;
38
import org.apache.poi.xssf.usermodel.XSSFFormulaEvaluator;
39
import org.apache.poi.xssf.usermodel.XSSFName;
40
import org.apache.poi.xssf.usermodel.XSSFSheet;
41
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
35
import org.junit.Test;
42
import org.junit.Test;
36
43
37
/**
44
/**
Lines 205-211 Link Here
205
                    + "' but got '" + cv.formatAsString() + "'.");
212
                    + "' but got '" + cv.formatAsString() + "'.");
206
        }
213
        }
207
    }
214
    }
215
    
216
    @Test
217
    public void testIndirectWichNamedRange() throws IOException{
218
		XSSFWorkbook workbook = new XSSFWorkbook();
219
		try {
220
			
221
			XSSFSheet sheet1 = workbook.createSheet("sheet1");
222
			XSSFSheet sheet2 = workbook.createSheet("sheet2");
223
			XSSFName namedRange = workbook.createName();
208
224
225
			sheet2.createRow(0).createCell(0).setCellValue(10);
226
			namedRange.setNameName("name1");
227
			namedRange.setSheetIndex(1);
228
			namedRange.setRefersToFormula("sheet2!A1:A1");
229
230
			XSSFCell formulaCell = sheet1.createRow(0).createCell(0);
231
			formulaCell.setCellFormula("SUM(INDIRECT(\"sheet2!name1\"))");
232
233
			XSSFFormulaEvaluator formulaEvaluator = workbook.getCreationHelper().createFormulaEvaluator();
234
			formulaEvaluator.evaluate(formulaCell);
235
		} finally {
236
			workbook.close();
237
		}
238
239
    }
240
209
    @Test
241
    @Test
210
    public void testInvalidInput() {
242
    public void testInvalidInput() {
211
        assertEquals(ErrorEval.VALUE_INVALID, Indirect.instance.evaluate(new ValueEval[] {}, null));
243
        assertEquals(ErrorEval.VALUE_INVALID, Indirect.instance.evaluate(new ValueEval[] {}, null));

Return to bug 62162