Program: 81520
Project: 81520
Buggy source:
public void testPoiObjectsExpose() throws IOException, ParsePropertyException {
  Map beans=new HashMap();
  beans.put("String_Node_Str",departments);
  beans.put("String_Node_Str",itDepartment);
  List employees=itDepartment.getStaff();
  ((Employee)employees.get(0)).setComment("String_Node_Str");
  for (int i=1; i < employees.size(); i++) {
    Employee employee=(Employee)employees.get(i);
    String comment="String_Node_Str";
    for (int j=0; j <= i; j++) {
      comment+="String_Node_Str" + j + "String_Node_Str";
    }
    employee.setComment(comment);
  }
  beans.put("String_Node_Str",employees);
  beans.put("String_Node_Str",new Integer(0));
  InputStream is=new BufferedInputStream(getClass().getResourceAsStream(poiobjectsXLS));
  XLSTransformer transformer=new XLSTransformer();
  HSSFWorkbook resultWorkbook=transformer.transformXLS(is,beans);
  is.close();
  is=new BufferedInputStream(getClass().getResourceAsStream(poiobjectsXLS));
  POIFSFileSystem fs=new POIFSFileSystem(is);
  HSSFWorkbook sourceWorkbook=new HSSFWorkbook(fs);
  HSSFSheet sourceSheet=sourceWorkbook.getSheetAt(0);
  HSSFSheet resultSheet=resultWorkbook.getSheetAt(0);
  assertEquals("String_Node_Str",sourceSheet.getFirstRowNum(),resultSheet.getFirstRowNum());
  assertEquals(resultSheet.getHeader().getLeft(),"String_Node_Str");
  assertEquals(resultSheet.getHeader().getCenter(),itDepartment.getName());
  assertEquals(resultSheet.getHeader().getRight(),"String_Node_Str");
  assertEquals(resultSheet.getFooter().getRight(),"String_Node_Str");
  assertEquals(resultSheet.getFooter().getCenter(),"String_Node_Str");
  assertEquals(resultWorkbook.getSheetName(2),itDepartment.getName());
  Map props=new HashMap();
  props.put("String_Node_Str","String_Node_Str");
  CellsChecker checker=new CellsChecker(props);
  checker.checkRows(sourceSheet,resultSheet,1,0,3);
  checker.checkListCells(sourceSheet,5,resultSheet,3,(short)0,itEmployeeNames);
  checker.checkListCells(sourceSheet,5,resultSheet,3,(short)1,itPayments);
  checker.checkListCells(sourceSheet,5,resultSheet,3,(short)2,itBonuses);
  props.clear();
  props.put("String_Node_Str","String_Node_Str");
  checker=new CellsChecker(props);
  checker.checkRows(sourceSheet,resultSheet,1,9,3);
  props.clear();
  checker.checkListCells(sourceSheet,5,resultSheet,12,(short)0,hrEmployeeNames);
  checker.checkListCells(sourceSheet,5,resultSheet,12,(short)1,hrPayments);
  checker.checkListCells(sourceSheet,5,resultSheet,12,(short)2,hrBonuses);
  props.clear();
  props.put("String_Node_Str","String_Node_Str");
  checker=new CellsChecker(props);
  checker.checkRows(sourceSheet,resultSheet,1,17,3);
  props.clear();
  checker.checkListCells(sourceSheet,5,resultSheet,20,(short)0,baEmployeeNames);
  checker.checkListCells(sourceSheet,5,resultSheet,20,(short)1,baPayments);
  checker.checkListCells(sourceSheet,5,resultSheet,20,(short)2,baBonuses);
  is.close();
  saveWorkbook(resultWorkbook,poiobjectsDestXLS);
}

Fixed version (ground truth):
public void testPoiObjectsExpose() throws IOException, ParsePropertyException {
  Map beans=new HashMap();
  beans.put("String_Node_Str",departments);
  beans.put("String_Node_Str",itDepartment);
  List employees=itDepartment.getStaff();
  ((Employee)employees.get(0)).setComment("String_Node_Str");
  for (int i=1; i < employees.size(); i++) {
    Employee employee=(Employee)employees.get(i);
    String comment="String_Node_Str";
    for (int j=0; j <= i; j++) {
      comment+="String_Node_Str" + j + "String_Node_Str";
    }
    employee.setComment(comment);
  }
  beans.put("String_Node_Str",employees);
  beans.put("String_Node_Str",new Integer(0));
  beans.put("String_Node_Str",new Integer(3));
  InputStream is=new BufferedInputStream(getClass().getResourceAsStream(poiobjectsXLS));
  XLSTransformer transformer=new XLSTransformer();
  HSSFWorkbook resultWorkbook=transformer.transformXLS(is,beans);
  is.close();
  is=new BufferedInputStream(getClass().getResourceAsStream(poiobjectsXLS));
  POIFSFileSystem fs=new POIFSFileSystem(is);
  HSSFWorkbook sourceWorkbook=new HSSFWorkbook(fs);
  HSSFSheet sourceSheet=sourceWorkbook.getSheetAt(0);
  HSSFSheet resultSheet=resultWorkbook.getSheetAt(0);
  assertEquals("String_Node_Str",sourceSheet.getFirstRowNum(),resultSheet.getFirstRowNum());
  assertEquals(resultSheet.getHeader().getLeft(),"String_Node_Str");
  assertEquals(resultSheet.getHeader().getCenter(),itDepartment.getName());
  assertEquals(resultSheet.getHeader().getRight(),"String_Node_Str");
  assertEquals(resultSheet.getFooter().getRight(),"String_Node_Str");
  assertEquals(resultSheet.getFooter().getCenter(),"String_Node_Str");
  assertEquals(resultWorkbook.getSheetName(2),itDepartment.getName());
  Map props=new HashMap();
  props.put("String_Node_Str","String_Node_Str");
  CellsChecker checker=new CellsChecker(props);
  checker.checkRows(sourceSheet,resultSheet,1,0,3);
  checker.checkListCells(sourceSheet,5,resultSheet,3,(short)0,itEmployeeNames);
  checker.checkListCells(sourceSheet,5,resultSheet,3,(short)1,itPayments);
  checker.checkListCells(sourceSheet,5,resultSheet,3,(short)2,itBonuses);
  props.clear();
  props.put("String_Node_Str","String_Node_Str");
  checker=new CellsChecker(props);
  checker.checkRows(sourceSheet,resultSheet,1,9,3);
  props.clear();
  checker.checkListCells(sourceSheet,5,resultSheet,12,(short)0,hrEmployeeNames);
  checker.checkListCells(sourceSheet,5,resultSheet,12,(short)1,hrPayments);
  checker.checkListCells(sourceSheet,5,resultSheet,12,(short)2,hrBonuses);
  props.clear();
  props.put("String_Node_Str","String_Node_Str");
  checker=new CellsChecker(props);
  checker.checkRows(sourceSheet,resultSheet,1,17,3);
  props.clear();
  checker.checkListCells(sourceSheet,5,resultSheet,20,(short)0,baEmployeeNames);
  checker.checkListCells(sourceSheet,5,resultSheet,20,(short)1,baPayments);
  checker.checkListCells(sourceSheet,5,resultSheet,20,(short)2,baBonuses);
  is.close();
  saveWorkbook(resultWorkbook,poiobjectsDestXLS);
}