Package org.zkoss.poi.ss.usermodel

Source Code of org.zkoss.poi.ss.usermodel.Book1XlsExternalBookReferenceTest

/* FormulaEvaluatorTest.java

  Purpose:
   
  Description:
   
  History:
    Mar 17, 2010 11:55:42 AM, Created by henrichen

Copyright (C) 2010 Potix Corporation. All Rights Reserved.

*/

package org.zkoss.poi.ss.usermodel;


import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;

import java.io.InputStream;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.zkoss.poi.hssf.usermodel.HSSFWorkbook;
import org.zkoss.poi.xssf.usermodel.XSSFWorkbook;
import org.zkoss.util.resource.ClassLocator;
import org.zkoss.zss.model.Book;
import org.zkoss.zss.model.impl.ExcelImporter;
import org.zkoss.zss.model.impl.HSSFBookImpl;
import org.zkoss.zss.model.impl.XSSFBookImpl;
import org.zkoss.zssex.model.impl.BookSeriesImpl;

/**
* @author henrichen
*
*/
public class Book1XlsExternalBookReferenceTest {
  private Workbook _workbook1;
  private Workbook _workbook2;
  private BookSeriesImpl _books;

  /**
   * @throws java.lang.Exception
   */
  @Before
  public void setUp() throws Exception {
    final String filename1 = "Book1.xls";
    final InputStream is1 = new ClassLocator().getResourceAsStream(filename1);
    _workbook1 = new ExcelImporter().imports(is1, filename1);
    assertTrue(_workbook1 instanceof Book);
    assertTrue(_workbook1 instanceof HSSFBookImpl);
    assertTrue(_workbook1 instanceof HSSFWorkbook);
    assertEquals(filename1, ((Book)_workbook1).getBookName());
    assertEquals("Sheet 1", _workbook1.getSheetName(0));
    assertEquals("Sheet2", _workbook1.getSheetName(1));
    assertEquals("Sheet3", _workbook1.getSheetName(2));
    assertEquals(0, _workbook1.getSheetIndex("Sheet 1"));
    assertEquals(1, _workbook1.getSheetIndex("Sheet2"));
    assertEquals(2, _workbook1.getSheetIndex("Sheet3"));
   
    final String filename2 = "Book1.xlsx";
    final InputStream is2 = new ClassLocator().getResourceAsStream(filename2);
    _workbook2 = new ExcelImporter().imports(is2, filename2);
    assertTrue(_workbook2 instanceof Book);
    assertTrue(_workbook2 instanceof XSSFBookImpl);
    assertTrue(_workbook2 instanceof XSSFWorkbook);
    assertEquals(filename2, ((Book)_workbook2).getBookName());
    assertEquals("Sheet 1", _workbook1.getSheetName(0));
    assertEquals("Sheet2", _workbook1.getSheetName(1));
    assertEquals("Sheet3", _workbook1.getSheetName(2));
    assertEquals(0, _workbook2.getSheetIndex("Sheet 1"));
    assertEquals(1, _workbook2.getSheetIndex("Sheet2"));
    assertEquals(2, _workbook2.getSheetIndex("Sheet3"));

    _books = new BookSeriesImpl(new Book[] {(Book)_workbook1, (Book)_workbook2});
  }

  /**
   * @throws java.lang.Exception
   */
  @After
  public void tearDown() throws Exception {
    _workbook1 = null;
    _workbook2 = null;
    _books = null;
  }

  @Test
  public void testExternalReferenceRid() {
    Sheet sheet1 = _workbook1.getSheet("Sheet 1");
    Row row = sheet1.getRow(5);
    Cell cell = row.getCell(3); //D6: =SUM('[Book1.xls]Sheet 1'!C1)
    CellValue value = ((Book)_workbook1).getFormulaEvaluator().evaluate(cell);
    assertEquals(3, value.getNumberValue(), 0.0000000000000001);
    assertEquals(Cell.CELL_TYPE_NUMERIC, value.getCellType());
  }
}
TOP

Related Classes of org.zkoss.poi.ss.usermodel.Book1XlsExternalBookReferenceTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.