Program: 70296
Project: 70296
Buggy source:
/** 
 * test case to test the parser,especially the capability to parse the Table. To get the content about Table from an external file and then compare the expected result with the real result of some basic properties of DataSet. If they are the same,that means the IR is correct, otherwise, there exists errors in the parser
 */
public void testTable(){
  TableItemDesign table=(TableItemDesign)report.getContent(0);
  assertEquals("String_Node_Str",table.getCaption().getDesignValue());
  assertEquals(6,table.getColumnCount());
  ColumnDesign column=table.getColumn(0);
  assertEquals("String_Node_Str",column.getWidth().toString());
  TableBandDesign header=(TableBandDesign)table.getHeader();
  assertEquals(1,header.getRowCount());
  RowDesign row=header.getRow(0);
  assertEquals(row.getBookmark().getDesignValue(),"String_Node_Str");
  assertEquals(1,row.getCellCount());
  CellDesign cell=row.getCell(0);
  assertEquals(6,cell.getColSpan());
  assertEquals(1,cell.getContentCount());
  assertEquals(2,table.getGroupCount());
  GroupDesign group=(GroupDesign)table.getGroup(0);
  header=(TableBandDesign)group.getHeader();
  assertEquals(1,header.getRowCount());
  row=header.getRow(0);
  assertEquals(6,row.getCellCount());
  cell=row.getCell(0);
  assertEquals("String_Node_Str",cell.getDrop().getDesignValue());
  cell=row.getCell(1);
  assertEquals("String_Node_Str",cell.getDrop().getDesignValue());
  TableBandDesign footer=(TableBandDesign)group.getFooter();
  assertEquals(1,footer.getRowCount());
  TableBandDesign detail=(TableBandDesign)table.getDetail();
  assertEquals(1,detail.getRowCount());
  assertEquals(1,detail.getRowCount());
}

Fixed version (ground truth):
/** 
 * test case to test the parser,especially the capability to parse the Table. To get the content about Table from an external file and then compare the expected result with the real result of some basic properties of DataSet. If they are the same,that means the IR is correct, otherwise, there exists errors in the parser
 */
public void testTable(){
  TableItemDesign table=(TableItemDesign)report.getContent(0);
  assertEquals("String_Node_Str",table.getCaption().getDesignValue());
  assertEquals(6,table.getColumnCount());
  ColumnDesign column=table.getColumn(0);
  assertEquals("String_Node_Str",column.getWidth().toString());
  TableBandDesign header=(TableBandDesign)table.getHeader();
  assertEquals(1,header.getRowCount());
  RowDesign row=header.getRow(0);
  assertEquals(row.getBookmark().getDesignValue(),"String_Node_Str");
  assertEquals(1,row.getCellCount());
  CellDesign cell=row.getCell(0);
  assertEquals(6,cell.getColSpan());
  assertEquals(1,cell.getContentCount());
  assertEquals(2,table.getGroupCount());
  GroupDesign group=(GroupDesign)table.getGroup(0);
  header=(TableBandDesign)group.getHeader();
  assertEquals(1,header.getRowCount());
  row=header.getRow(0);
  assertEquals(6,row.getCellCount());
  cell=row.getCell(0);
  assertEquals("String_Node_Str",cell.getDrop());
  cell=row.getCell(1);
  assertEquals("String_Node_Str",cell.getDrop());
  TableBandDesign footer=(TableBandDesign)group.getFooter();
  assertEquals(1,footer.getRowCount());
  TableBandDesign detail=(TableBandDesign)table.getDetail();
  assertEquals(1,detail.getRowCount());
  assertEquals(1,detail.getRowCount());
}