if (assertionScoreDirectorFactory == null) {
assertionScoreDirectorFactory = scoreDirectorFactory;
}
ScoreDirector uncorruptedScoreDirector = assertionScoreDirectorFactory.buildScoreDirector();
uncorruptedScoreDirector.setWorkingSolution(workingSolution);
Score uncorruptedScore = uncorruptedScoreDirector.calculateScore();
if (!workingScore.equals(uncorruptedScore)) {
String scoreCorruptionAnalysis = buildScoreCorruptionAnalysis(uncorruptedScoreDirector);
uncorruptedScoreDirector.dispose();
throw new IllegalStateException(
"Score corruption: the workingScore (" + workingScore + ") is not the uncorruptedScore ("