Program: 159013
Project: 159013
Buggy source:
private void parseType(ExpectedType type,String line){
  if (type.equals(CardTestPlayerBase.ExpectedType.TURN_NUMBER)) {
    int turn=getIntParam(line,1);
    Assert.assertEquals("String_Node_Str",turn,currentGame.getTurnNum());
    return;
  }
  if (type.equals(CardTestPlayerBase.ExpectedType.RESULT)) {
    String expected=getStringParam(line,1);
    String actual="String_Node_Str";
    if (currentGame.getWinner().equals("String_Node_Str")) {
      actual="String_Node_Str";
    }
 else     if (currentGame.getWinner().equals("String_Node_Str")) {
      actual="String_Node_Str";
    }
    Assert.assertEquals("String_Node_Str",expected,actual);
    return;
  }
  if (type.equals(CardTestPlayerBase.ExpectedType.LIFE)) {
    String player=getStringParam(line,1);
    int expected=getIntParam(line,2);
    if (player.equals("String_Node_Str")) {
      int actual=currentGame.getPlayer(playerA.getId()).getLife();
      Assert.assertEquals("String_Node_Str",expected,actual);
    }
 else     if (player.equals("String_Node_Str")) {
      int actual=currentGame.getPlayer(playerB.getId()).getLife();
      Assert.assertEquals("String_Node_Str",expected,actual);
    }
 else {
      throw new IllegalArgumentException("String_Node_Str" + player + "String_Node_Str"+ line);
    }
    return;
  }
  if (type.equals(CardTestPlayerBase.ExpectedType.BATTLEFIELD)) {
    String playerName=getStringParam(line,1);
    String cardName=getStringParam(line,2);
    int expectedCount=getIntParam(line,3);
    Player player=null;
    if (playerName.equals("String_Node_Str")) {
      player=currentGame.getPlayer(playerA.getId());
    }
 else     if (playerName.equals("String_Node_Str")) {
      player=currentGame.getPlayer(playerB.getId());
    }
 else {
      throw new IllegalArgumentException("String_Node_Str" + player + "String_Node_Str"+ line);
    }
    int actualCount=0;
    for (    Permanent permanent : currentGame.getBattlefield().getAllPermanents()) {
      if (permanent.getControllerId().equals(player.getId())) {
        if (permanent.getName().equals(cardName)) {
          actualCount++;
        }
      }
    }
    Assert.assertEquals("String_Node_Str" + cardName + "String_Node_Str",expectedCount,actualCount);
    return;
  }
  if (type.equals(CardTestPlayerBase.ExpectedType.GRAVEYARD)) {
    String playerName=getStringParam(line,1);
    String cardName=getStringParam(line,2);
    int expectedCount=getIntParam(line,3);
    Player player=null;
    if (playerName.equals("String_Node_Str")) {
      player=currentGame.getPlayer(playerA.getId());
    }
 else     if (playerName.equals("String_Node_Str")) {
      player=currentGame.getPlayer(playerB.getId());
    }
 else {
      throw new IllegalArgumentException("String_Node_Str" + player + "String_Node_Str"+ line);
    }
    int actualCount=0;
    for (    Card card : player.getGraveyard().getCards(currentGame)) {
      if (card.getName().equals(cardName)) {
        actualCount++;
      }
    }
    Assert.assertEquals("String_Node_Str" + cardName + "String_Node_Str",expectedCount,actualCount);
  }
}

Fixed version (ground truth):
private void parseType(ExpectedType type,String line){
  if (type.equals(CardTestPlayerBase.ExpectedType.TURN_NUMBER)) {
    int turn=getIntParam(line,1);
    Assert.assertEquals("String_Node_Str",turn,currentGame.getTurnNum());
    return;
  }
  if (type.equals(CardTestPlayerBase.ExpectedType.RESULT)) {
    String expected=getStringParam(line,1);
    String actual="String_Node_Str";
switch (currentGame.getWinner()) {
case "String_Node_Str":
      actual="String_Node_Str";
    break;
case "String_Node_Str":
  actual="String_Node_Str";
break;
}
Assert.assertEquals("String_Node_Str",expected,actual);
return;
}
Player player=null;
String playerName=getStringParam(line,1);
switch (playerName) {
case "String_Node_Str":
player=currentGame.getPlayer(playerA.getId());
break;
case "String_Node_Str":
player=currentGame.getPlayer(playerB.getId());
break;
}
if (player == null) {
throw new IllegalArgumentException("String_Node_Str" + player + "String_Node_Str"+ line);
}
if (type.equals(CardTestPlayerBase.ExpectedType.LIFE)) {
int expected=getIntParam(line,2);
int actual=player.getLife();
Assert.assertEquals("String_Node_Str",expected,actual);
return;
}
if (type.equals(CardTestPlayerBase.ExpectedType.BATTLEFIELD)) {
String cardName=getStringParam(line,2);
int expectedCount=getIntParam(line,3);
int actualCount=0;
for (Permanent permanent : currentGame.getBattlefield().getAllPermanents()) {
if (permanent.getControllerId().equals(player.getId())) {
if (permanent.getName().equals(cardName)) {
actualCount++;
}
}
}
Assert.assertEquals("String_Node_Str" + cardName + "String_Node_Str",expectedCount,actualCount);
return;
}
if (type.equals(CardTestPlayerBase.ExpectedType.GRAVEYARD)) {
String cardName=getStringParam(line,2);
int expectedCount=getIntParam(line,3);
int actualCount=0;
for (Card card : player.getGraveyard().getCards(currentGame)) {
if (card.getName().equals(cardName)) {
actualCount++;
}
}
Assert.assertEquals("String_Node_Str" + cardName + "String_Node_Str",expectedCount,actualCount);
}
}