Program: 11994
Project: 11994
Buggy source:
String getArgValue(TestMethodMeta testMethodMeta,ArgTypeMeta argTypeMeta,String argName){
  Assertion.mustNotBeNull(testMethodMeta,"String_Node_Str");
  Assertion.mustNotBeNull(argTypeMeta,"String_Node_Str");
  Assertion.mustNotBeEmpty(argName,"String_Node_Str");
  if (config.isExtensionEnabled && config.extConfiguration.extInstantiations != null) {
    for (    ExtInstantiation ins : config.extConfiguration.extInstantiations) {
      if (isCanonicalClassNameUsed(ins.canonicalClassName,argTypeMeta.name,testMethodMeta.classMeta)) {
        return ins.assignCode;
      }
    }
  }
  AvailableTypeDetector availableTypeDetector=new AvailableTypeDetector(targetClassMeta);
  if (availableTypeDetector.isJavaLangPackageType(argTypeMeta.name)) {
    return "String_Node_Str";
  }
 else   if (PrimitiveTypeUtil.isPrimitive(argTypeMeta.name)) {
    return PrimitiveTypeUtil.getTypeDefaultValue(argTypeMeta.name);
  }
 else   if (argTypeMeta.name.matches("String_Node_Str")) {
    return "String_Node_Str" + argTypeMeta.name + "String_Node_Str";
  }
 else   if (argTypeMeta.name.matches("String_Node_Str") && availableTypeDetector.isAvailableType("String_Node_Str",config)) {
    targetClassMeta.importedList.add("String_Node_Str");
    String genericsString=argTypeMeta.getGenericsAsString();
    if (genericsString.equals("String_Node_Str")) {
      genericsString="String_Node_Str";
    }
    return "String_Node_Str" + genericsString + "String_Node_Str";
  }
 else   if (argTypeMeta.name.matches("String_Node_Str") && availableTypeDetector.isAvailableType("String_Node_Str",config)) {
    targetClassMeta.importedList.add("String_Node_Str");
    String genericsString=argTypeMeta.getGenericsAsString();
    if (genericsString.matches("String_Node_Str")) {
      genericsString="String_Node_Str";
    }
    return "String_Node_Str" + genericsString + "String_Node_Str";
  }
 else   if (config.mockObjectFramework == MockObjectFramework.EasyMock) {
    return "String_Node_Str" + argTypeMeta.name.replaceAll(RegExp.Generics,StringValue.Empty) + "String_Node_Str";
  }
 else   if (config.mockObjectFramework == MockObjectFramework.JMock2) {
    return "String_Node_Str" + argTypeMeta.name.replaceAll(RegExp.Generics,StringValue.Empty) + "String_Node_Str";
  }
 else   if (config.mockObjectFramework == MockObjectFramework.JMockit) {
    if (new AvailableTypeDetector(targetClassMeta).isJMockitMockableType(argTypeMeta.name)) {
      return "String_Node_Str" + getTestMethodNamePrefix(testMethodMeta,testMethodMeta.testingTargetException) + "String_Node_Str"+ argName;
    }
 else {
      return "String_Node_Str";
    }
  }
 else   if (config.mockObjectFramework == MockObjectFramework.Mockito) {
    return "String_Node_Str" + argTypeMeta.name.replaceAll(RegExp.Generics,StringValue.Empty) + "String_Node_Str";
  }
 else {
    return "String_Node_Str";
  }
}

Fixed version (ground truth):
String getArgValue(TestMethodMeta testMethodMeta,ArgTypeMeta argTypeMeta,String argName){
  Assertion.mustNotBeNull(testMethodMeta,"String_Node_Str");
  Assertion.mustNotBeNull(argTypeMeta,"String_Node_Str");
  Assertion.mustNotBeEmpty(argName,"String_Node_Str");
  if (config.isExtensionEnabled && config.extConfiguration.extInstantiations != null) {
    for (    ExtInstantiation ins : config.extConfiguration.extInstantiations) {
      if (isCanonicalClassNameUsed(ins.canonicalClassName,argTypeMeta.name,testMethodMeta.classMeta)) {
        return ins.assignCode.trim();
      }
    }
  }
  AvailableTypeDetector availableTypeDetector=new AvailableTypeDetector(targetClassMeta);
  if (availableTypeDetector.isJavaLangPackageType(argTypeMeta.name)) {
    return "String_Node_Str";
  }
 else   if (PrimitiveTypeUtil.isPrimitive(argTypeMeta.name)) {
    return PrimitiveTypeUtil.getTypeDefaultValue(argTypeMeta.name);
  }
 else   if (argTypeMeta.name.matches("String_Node_Str")) {
    return "String_Node_Str" + argTypeMeta.name + "String_Node_Str";
  }
 else   if (argTypeMeta.name.matches("String_Node_Str") && availableTypeDetector.isAvailableType("String_Node_Str",config)) {
    targetClassMeta.importedList.add("String_Node_Str");
    String genericsString=argTypeMeta.getGenericsAsString();
    if (genericsString.equals("String_Node_Str")) {
      genericsString="String_Node_Str";
    }
    return "String_Node_Str" + genericsString + "String_Node_Str";
  }
 else   if (argTypeMeta.name.matches("String_Node_Str") && availableTypeDetector.isAvailableType("String_Node_Str",config)) {
    targetClassMeta.importedList.add("String_Node_Str");
    String genericsString=argTypeMeta.getGenericsAsString();
    if (genericsString.matches("String_Node_Str")) {
      genericsString="String_Node_Str";
    }
    return "String_Node_Str" + genericsString + "String_Node_Str";
  }
 else   if (config.mockObjectFramework == MockObjectFramework.EasyMock) {
    return "String_Node_Str" + argTypeMeta.name.replaceAll(RegExp.Generics,StringValue.Empty) + "String_Node_Str";
  }
 else   if (config.mockObjectFramework == MockObjectFramework.JMock2) {
    return "String_Node_Str" + argTypeMeta.name.replaceAll(RegExp.Generics,StringValue.Empty) + "String_Node_Str";
  }
 else   if (config.mockObjectFramework == MockObjectFramework.JMockit) {
    if (new AvailableTypeDetector(targetClassMeta).isJMockitMockableType(argTypeMeta.name)) {
      return "String_Node_Str" + getTestMethodNamePrefix(testMethodMeta,testMethodMeta.testingTargetException) + "String_Node_Str"+ argName;
    }
 else {
      return "String_Node_Str";
    }
  }
 else   if (config.mockObjectFramework == MockObjectFramework.Mockito) {
    return "String_Node_Str" + argTypeMeta.name.replaceAll(RegExp.Generics,StringValue.Empty) + "String_Node_Str";
  }
 else {
    return "String_Node_Str";
  }
}