Program: 109898
Project: 109898
Buggy source:
@Test public void testProbabilities() throws SurveyException {
  SurveyDatum optionA=new StringDatum("String_Node_Str");
  SurveyDatum optionB=new StringDatum("String_Node_Str");
  SurveyDatum optionC=new StringDatum("String_Node_Str");
  SurveyDatum optionD=new StringDatum("String_Node_Str");
  Survey survey=new Survey(new Question("String_Node_Str",optionA,optionB,optionC,optionD),new Question("String_Node_Str",optionA,optionB,optionC,optionD),new Question("String_Node_Str",optionA,optionB,optionC,optionD),new Question("String_Node_Str",optionA,optionB,optionC,optionD),new Question("String_Node_Str",optionA,optionB,optionC,optionD));
  AbstractClassifier classifier=new AbstractClassifier(survey,false,0.05,1){
    @Override public double getScoreForResponse(    List<IQuestionResponse> responses) throws SurveyException {
      return 0;
    }
    @Override public double getScoreForResponse(    SurveyResponse surveyResponse) throws SurveyException {
      return 0;
    }
    @Override public void computeScoresForResponses(    List<? extends SurveyResponse> responses) throws SurveyException {
    }
    @Override public boolean classifyResponse(    SurveyResponse response) throws SurveyException {
      return false;
    }
  }
;
  List<SurveyResponse> responses=makeNResponses(500,new RandomRespondent(survey,RandomRespondent.AdversaryType.UNIFORM));
  classifier.makeProbabilities(responses);
  for (  Map<String,Double> m : classifier.answerProbabilityMap.values()) {
    double total=0.0;
    for (    Double d : m.values()) {
      Assert.assertTrue(String.format("String_Node_Str",d),d > 0.20 && d < 0.30);
      total+=d;
    }
    Assert.assertTrue(String.format("String_Node_Str",total),total > 0.95 && total < 1.05);
  }
}

Fixed version (ground truth):
@Test public void testProbabilities() throws SurveyException {
  SurveyDatum optionA=new StringDatum("String_Node_Str");
  SurveyDatum optionB=new StringDatum("String_Node_Str");
  SurveyDatum optionC=new StringDatum("String_Node_Str");
  SurveyDatum optionD=new StringDatum("String_Node_Str");
  Survey survey=new Survey(new Question("String_Node_Str",optionA,optionB,optionC,optionD),new Question("String_Node_Str",optionA,optionB,optionC,optionD),new Question("String_Node_Str",optionA,optionB,optionC,optionD),new Question("String_Node_Str",optionA,optionB,optionC,optionD),new Question("String_Node_Str",optionA,optionB,optionC,optionD));
  AbstractClassifier classifier=new AbstractClassifier(survey,false,0.05,1){
    @Override public double getScoreForResponse(    List<IQuestionResponse> responses) throws SurveyException {
      return 0;
    }
    @Override public double getScoreForResponse(    SurveyResponse surveyResponse) throws SurveyException {
      return 0;
    }
    @Override public void computeScoresForResponses(    List<? extends SurveyResponse> responses) throws SurveyException {
    }
    @Override public boolean classifyResponse(    SurveyResponse response) throws SurveyException {
      return false;
    }
  }
;
  List<SurveyResponse> responses=makeNResponses(500,new RandomRespondent(survey,RandomRespondent.AdversaryType.UNIFORM));
  classifier.makeProbabilities(responses);
  for (  Map<String,Double> m : classifier.answerProbabilityMap.values()) {
    double total=0.0;
    for (    Double d : m.values()) {
      Assert.assertTrue(String.format("String_Node_Str",d),d > 0.19 && d < 0.31);
      total+=d;
    }
    Assert.assertTrue(String.format("String_Node_Str",total),total > 0.95 && total < 1.05);
  }
}