use of org.pentaho.di.core.spreadsheet.KWorkbook in project pentaho-kettle by pentaho.
the class JxlWorkBookIT method testRead.
public void testRead() throws Exception {
KWorkbook workbook = WorkbookFactory.getWorkbook(SpreadSheetType.JXL, "src/it/resources/sample-file.xls", null);
int numberOfSheets = workbook.getNumberOfSheets();
assertEquals(3, numberOfSheets);
KSheet sheet1 = workbook.getSheet(0);
assertEquals("Sheet1", sheet1.getName());
sheet1 = workbook.getSheet("Sheet1");
assertEquals("Sheet1", sheet1.getName());
assertEquals(5, sheet1.getRows());
KCell[] row = sheet1.getRow(2);
assertEquals(KCellType.LABEL, row[1].getType());
assertEquals("One", row[1].getValue());
assertEquals(KCellType.DATE, row[2].getType());
assertEquals(new Date(1283817600000L), row[2].getValue());
assertEquals(KCellType.NUMBER, row[3].getType());
assertEquals(Double.valueOf("75"), row[3].getValue());
assertEquals(KCellType.BOOLEAN, row[4].getType());
assertEquals(Boolean.valueOf(true), row[4].getValue());
assertEquals(KCellType.NUMBER_FORMULA, row[5].getType());
assertEquals(Double.valueOf("75"), row[5].getValue());
row = sheet1.getRow(3);
assertEquals(KCellType.LABEL, row[1].getType());
assertEquals("Two", row[1].getValue());
assertEquals(KCellType.DATE, row[2].getType());
assertEquals(new Date(1283904000000L), row[2].getValue());
assertEquals(KCellType.NUMBER, row[3].getType());
assertEquals(Double.valueOf("42"), row[3].getValue());
assertEquals(KCellType.BOOLEAN, row[4].getType());
assertEquals(Boolean.valueOf(false), row[4].getValue());
assertEquals(KCellType.NUMBER_FORMULA, row[5].getType());
assertEquals(Double.valueOf("117"), row[5].getValue());
row = sheet1.getRow(4);
assertEquals(KCellType.LABEL, row[1].getType());
assertEquals("Three", row[1].getValue());
assertEquals(KCellType.DATE, row[2].getType());
assertEquals(new Date(1283990400000L), row[2].getValue());
assertEquals(KCellType.NUMBER, row[3].getType());
assertEquals(Double.valueOf("93"), row[3].getValue());
assertEquals(KCellType.BOOLEAN, row[4].getType());
assertEquals(Boolean.valueOf(true), row[4].getValue());
assertEquals(KCellType.NUMBER_FORMULA, row[5].getType());
assertEquals(Double.valueOf("210"), row[5].getValue());
try {
sheet1.getRow(5);
throw new Exception("No out of bounds exception thrown when expected");
} catch (ArrayIndexOutOfBoundsException e) {
// OK!
}
workbook.close();
}
use of org.pentaho.di.core.spreadsheet.KWorkbook in project pentaho-kettle by pentaho.
the class PoiWorkBookIT method readData.
private void readData(String file, String password) throws KettleException {
KWorkbook workbook = WorkbookFactory.getWorkbook(SpreadSheetType.POI, file, null, password);
int numberOfSheets = workbook.getNumberOfSheets();
assertEquals(3, numberOfSheets);
KSheet sheet1 = workbook.getSheet(0);
assertEquals("Sheet1", sheet1.getName());
sheet1 = workbook.getSheet("Sheet1");
assertEquals("Sheet1", sheet1.getName());
assertEquals(5, sheet1.getRows());
KCell[] row = sheet1.getRow(2);
assertEquals(KCellType.LABEL, row[1].getType());
assertEquals("One", row[1].getValue());
assertEquals(KCellType.DATE, row[2].getType());
assertEquals(new Date(1283817600000L), row[2].getValue());
assertEquals(KCellType.NUMBER, row[3].getType());
assertEquals(Double.valueOf("75"), row[3].getValue());
assertEquals(KCellType.BOOLEAN, row[4].getType());
assertEquals(Boolean.valueOf(true), row[4].getValue());
assertEquals(KCellType.NUMBER_FORMULA, row[5].getType());
assertEquals(Double.valueOf("75"), row[5].getValue());
row = sheet1.getRow(3);
assertEquals(KCellType.LABEL, row[1].getType());
assertEquals("Two", row[1].getValue());
assertEquals(KCellType.DATE, row[2].getType());
assertEquals(new Date(1283904000000L), row[2].getValue());
assertEquals(KCellType.NUMBER, row[3].getType());
assertEquals(Double.valueOf("42"), row[3].getValue());
assertEquals(KCellType.BOOLEAN, row[4].getType());
assertEquals(Boolean.valueOf(false), row[4].getValue());
assertEquals(KCellType.NUMBER_FORMULA, row[5].getType());
assertEquals(Double.valueOf("117"), row[5].getValue());
row = sheet1.getRow(4);
assertEquals(KCellType.LABEL, row[1].getType());
assertEquals("Three", row[1].getValue());
assertEquals(KCellType.DATE, row[2].getType());
assertEquals(new Date(1283990400000L), row[2].getValue());
assertEquals(KCellType.NUMBER, row[3].getType());
assertEquals(Double.valueOf("93"), row[3].getValue());
assertEquals(KCellType.BOOLEAN, row[4].getType());
assertEquals(Boolean.valueOf(true), row[4].getValue());
assertEquals(KCellType.NUMBER_FORMULA, row[5].getType());
assertEquals(Double.valueOf("210"), row[5].getValue());
try {
sheet1.getRow(5);
fail("No out of bounds exception thrown when expected");
} catch (ArrayIndexOutOfBoundsException e) {
// OK!
}
workbook.close();
}
use of org.pentaho.di.core.spreadsheet.KWorkbook in project pentaho-kettle by pentaho.
the class OdsWorkBookIT method testRead.
public void testRead() throws Exception {
KWorkbook workbook = WorkbookFactory.getWorkbook(SpreadSheetType.ODS, "src/it/resources/sample-file.ods", null);
int numberOfSheets = workbook.getNumberOfSheets();
assertEquals(3, numberOfSheets);
KSheet sheet1 = workbook.getSheet(0);
assertEquals("Sheet1", sheet1.getName());
sheet1 = workbook.getSheet("Sheet1");
assertEquals("Sheet1", sheet1.getName());
assertEquals(5, sheet1.getRows());
KCell[] row = sheet1.getRow(2);
assertEquals(KCellType.LABEL, row[1].getType());
assertEquals("One", row[1].getValue());
assertEquals(KCellType.DATE, row[2].getType());
assertEquals(new Date(1283817600000L), row[2].getValue());
assertEquals(KCellType.NUMBER, row[3].getType());
assertEquals(Double.valueOf("75"), row[3].getValue());
// Always like that in ODS
assertEquals(KCellType.BOOLEAN_FORMULA, row[4].getType());
assertEquals(Boolean.valueOf(true), row[4].getValue());
assertEquals(KCellType.NUMBER_FORMULA, row[5].getType());
assertEquals(Double.valueOf("75"), row[5].getValue());
row = sheet1.getRow(3);
assertEquals(KCellType.LABEL, row[1].getType());
assertEquals("Two", row[1].getValue());
assertEquals(KCellType.DATE, row[2].getType());
assertEquals(new Date(1283904000000L), row[2].getValue());
assertEquals(KCellType.NUMBER, row[3].getType());
assertEquals(Double.valueOf("42"), row[3].getValue());
// Always like that in ODS
assertEquals(KCellType.BOOLEAN_FORMULA, row[4].getType());
assertEquals(Boolean.valueOf(false), row[4].getValue());
assertEquals(KCellType.NUMBER_FORMULA, row[5].getType());
assertEquals(Double.valueOf("117"), row[5].getValue());
row = sheet1.getRow(4);
assertEquals(KCellType.LABEL, row[1].getType());
assertEquals("Three", row[1].getValue());
assertEquals(KCellType.DATE, row[2].getType());
assertEquals(new Date(1283990400000L), row[2].getValue());
assertEquals(KCellType.NUMBER, row[3].getType());
assertEquals(Double.valueOf("93"), row[3].getValue());
// Always like that in ODS
assertEquals(KCellType.BOOLEAN_FORMULA, row[4].getType());
assertEquals(Boolean.valueOf(true), row[4].getValue());
assertEquals(KCellType.NUMBER_FORMULA, row[5].getType());
assertEquals(Double.valueOf("210"), row[5].getValue());
workbook.close();
}
use of org.pentaho.di.core.spreadsheet.KWorkbook in project pentaho-kettle by pentaho.
the class StaxWorkBookIT method testEmptySheet.
@Test
public void testEmptySheet() throws Exception {
KWorkbook workbook = getWorkbook(sample, null);
int numberOfSheets = workbook.getNumberOfSheets();
assertEquals(3, numberOfSheets);
// last two sheets are empty, check if no exception opening
for (int i = 1; i < numberOfSheets; i++) {
KSheet sheet = workbook.getSheet(i);
for (int j = 0; j < sheet.getRows(); j++) {
sheet.getRow(j);
}
}
}
use of org.pentaho.di.core.spreadsheet.KWorkbook in project pentaho-kettle by pentaho.
the class StaxWorkBookIT method testReadEmptyRow.
@Test
public void testReadEmptyRow() throws Exception {
KWorkbook workbook = getWorkbook(sample, null);
KSheet sheet1 = workbook.getSheet(0);
KCell[] row = sheet1.getRow(0);
assertEquals(0, row.length);
}
Aggregations