Как написать тест на метод использующий Apache Poi?
Я использую библиотеку Apache Poi, в тестировании я новичок поэтому сломала голову какие утверждения использовать для этого метода, моя программа собирает уникальные значения из файла excel и создает файлы excel в соответствии с количеством уникальных значений с сгруппированными уникальными значениями из исходного файла, подскажите как можно было бы написать тест?
private void writeWorkBooks() throws FileNotFoundException {
XSSFWorkbook book;
for (String s : uniqueValues) {
book = new XSSFWorkbook();
XSSFRow nr;
XSSFRow oldrow;
int count = 0;
for (int i = 0; i < this.workbook.getNumberOfSheets(); i++) {
XSSFSheet newsheet = this.workbook.getSheetAt(i);
XSSFSheet shnewbook = book.createSheet(newsheet.getSheetName());
Iterator<Row> newrow = newsheet.rowIterator();
while (newrow.hasNext()) {
Row newr = (Row) newrow.next();
oldrow = newsheet.getRow(newr.getRowNum());
if (newr.getCell(2) != null) {
if (newr.getRowNum() >= 8 && !newr.getCell(2).getStringCellValue().trim().equals(s)) {
continue;
}
}
nr = shnewbook.createRow(count);
count++;
Iterator<Cell> newcell = newr.cellIterator();
while (newcell.hasNext()) {
Cell newc = newcell.next();
if (newc != null) {
XSSFCell xssfCell = nr.createCell(newc.getColumnIndex());
XSSFCell hssfCell = oldrow.getCell(newc.getColumnIndex());
CellStyle nstyle = book.createCellStyle();
nstyle.cloneStyleFrom(newc.getCellStyle());
xssfCell.setCellStyle(nstyle);
if (hssfCell != null) {
switch (hssfCell.getCellType()) {
case BOOLEAN:
xssfCell.setCellValue(hssfCell.getBooleanCellValue());
break;
case NUMERIC:
if (DateUtil.isCellDateFormatted(hssfCell)) {
xssfCell.setCellValue(hssfCell.getDateCellValue());
} else {
xssfCell.setCellValue(hssfCell.getNumericCellValue());
}
break;
case STRING:
xssfCell.setCellValue(hssfCell.getStringCellValue());
break;
case FORMULA:
xssfCell.setCellFormula(hssfCell.getCellFormula());
break;
case BLANK:
xssfCell.setBlank();
break;
default:
break;
}
}
}
}
}
}
String fileNewName = s.toString() + "_new_" + ".xlsx";
try {
FileOutputStream out = new FileOutputStream(fileNewName);
book.write(out);
out.close();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
}
Источник: Stack Overflow на русском