Program: 36217
Project: 36217
Buggy source:
private void makeResultResource(ITestResult result,String status){
  String className=result.getTestClass().getName();
  className=className.substring(className.lastIndexOf("String_Node_Str") + 1);
  Resource assertionResource=model.createResource(null,Earl.Assertion);
  Resource resultResource=model.createResource(null,Earl.TestResult);
  Resource subjectResource=model.getResource(refPage);
  assertionResource.addProperty(Earl.testSubject,subjectResource);
  assertionResource.addProperty(Earl.test,model.getResource(createTestCaseURL(className,result.getName())));
switch (status) {
case FAIL:
    resultResource.addProperty(Earl.outcome,Earl.fail);
  break;
case PASS:
resultResource.addProperty(Earl.outcome,Earl.pass);
break;
case SKIP:
resultResource.addProperty(Earl.outcome,Earl.skip);
break;
default :
break;
}
if (result.getThrowable() != null) {
createExceptionProperty(result.getThrowable(),resultResource);
}
if (result.getMethod().getConstructorOrMethod().getMethod().getAnnotation(SpecTest.class) != null) {
SpecTest test=result.getMethod().getConstructorOrMethod().getMethod().getAnnotation(SpecTest.class);
METHOD type=test.testMethod();
switch (type) {
case AUTOMATED:
assertionResource.addProperty(Earl.mode,Earl.automatic);
break;
case MANUAL:
assertionResource.addProperty(Earl.mode,Earl.manual);
break;
case NOT_IMPLEMENTED:
assertionResource.addProperty(Earl.mode,Earl.notTested);
break;
case CLIENT_ONLY:
assertionResource.addProperty(Earl.mode,Earl.notTested);
break;
default :
assertionResource.addProperty(Earl.mode,Earl.notTested);
break;
}
}
assertionResource.addProperty(Earl.assertedBy,subjectResource);
assertionResource.addLiteral(ranAsClass,result.getTestClass().getRealClass().getSimpleName());
resultResource.addProperty(DCTerms.date,model.createTypedLiteral(GregorianCalendar.getInstance()));
assertionResource.addProperty(Earl.testResult,resultResource);
}

Fixed version (ground truth):
private void makeResultResource(ITestResult result,String status){
  String className=result.getTestClass().getName();
  className=className.substring(className.lastIndexOf("String_Node_Str") + 1);
  Resource assertionResource=model.createResource(null,Earl.Assertion);
  Resource resultResource=model.createResource(null,Earl.TestResult);
  Resource subjectResource=model.getResource(refPage);
  assertionResource.addProperty(Earl.testSubject,subjectResource);
  assertionResource.addProperty(Earl.test,model.getResource(createTestCaseURL(className,result.getName())));
switch (status) {
case FAIL:
    resultResource.addProperty(Earl.outcome,Earl.failed);
  break;
case PASS:
resultResource.addProperty(Earl.outcome,Earl.passed);
break;
case SKIP:
resultResource.addProperty(Earl.outcome,Earl.untested);
break;
default :
break;
}
if (result.getThrowable() != null) {
createExceptionProperty(result.getThrowable(),resultResource);
}
if (result.getMethod().getConstructorOrMethod().getMethod().getAnnotation(SpecTest.class) != null) {
SpecTest test=result.getMethod().getConstructorOrMethod().getMethod().getAnnotation(SpecTest.class);
METHOD type=test.testMethod();
switch (type) {
case AUTOMATED:
assertionResource.addProperty(Earl.mode,Earl.automatic);
break;
case MANUAL:
assertionResource.addProperty(Earl.mode,Earl.manual);
break;
case NOT_IMPLEMENTED:
assertionResource.addProperty(Earl.mode,Earl.notTested);
break;
case CLIENT_ONLY:
assertionResource.addProperty(Earl.mode,Earl.notTested);
break;
default :
assertionResource.addProperty(Earl.mode,Earl.notTested);
break;
}
}
assertionResource.addProperty(Earl.assertedBy,subjectResource);
assertionResource.addLiteral(ranAsClass,result.getTestClass().getRealClass().getSimpleName());
resultResource.addProperty(DCTerms.date,model.createTypedLiteral(GregorianCalendar.getInstance()));
assertionResource.addProperty(Earl.testResult,resultResource);
}