import nz.ac.massey.cs.deploymentpuzzlersurvey.TechnicalQuestion;
import nz.ac.massey.cs.deploymentpuzzlersurvey.TechnicalQuestions;
public class CorrectnessCalculator {
public static double calculateCorrectness (ResponseFilter responseFilter,QuestionFilter questionFilter ) throws Exception {
Responses responses = Responses.build().filter(responseFilter);
int answered = 0;
int anwseredCorrectly = 0;
for (TechnicalQuestion q:TechnicalQuestions.QUESTIONS) {
if (questionFilter.accept(q)) {
String id = q.getId();
answered = answered + responses.answered(id).notDuplicated(id).size();
anwseredCorrectly = anwseredCorrectly + responses.answered(id).notDuplicated(id).answeredCorrectly(id).size();
}
}
return ((double)anwseredCorrectly)/((double)answered);
}