Program: 28807
Project: 28807
Buggy source:
@Test public void simplePermanentRecursiveTransferDirOnlyTest() throws Exception {
  final String DIR="String_Node_Str";
  final String Y_SUBDIR="String_Node_Str";
  final String Z_SUBDIR="String_Node_Str";
  final Set<File> desiredResults=new HashSet<File>();
  final File origDir=File.createTempFile("String_Node_Str","String_Node_Str");
  origDir.delete();
  origDir.mkdir();
  final File dir=new File(origDir,DIR);
  dir.mkdir();
  final File ySubdir=new File(dir,Y_SUBDIR);
  ySubdir.mkdir();
  final File zSubdir=new File(dir,Y_SUBDIR + Z_SUBDIR);
  zSubdir.mkdir();
  File targetDir=null;
  try {
    targetDir=File.createTempFile("String_Node_Str","String_Node_Str");
    targetDir.delete();
    targetDir.mkdir();
    desiredResults.add(new File(targetDir.toURI().resolve(DIR)));
    desiredResults.add(new File(targetDir.toURI().resolve(DIR + Y_SUBDIR)));
    desiredResults.add(new File(targetDir.toURI().resolve(DIR + Y_SUBDIR + Z_SUBDIR)));
    new CommonPermTest(){
      @Override protected CommonPermTest init(      File targetDir){
        super.init(targetDir);
        return this;
      }
      @Override protected void addParts(      Outbound ob,      PayloadFilesManager instance) throws Exception {
        ob.attachFile("String_Node_Str",URI.create(DIR),"String_Node_Str",dir,true);
      }
      @Override protected void checkResults(      Inbound ib,      PayloadFilesManager instance) throws Exception {
        instance.processParts(ib);
        final Set<File> missing=new HashSet<File>();
        for (        File f : desiredResults) {
          if (!f.exists()) {
            missing.add(f);
          }
        }
        assertEquals("String_Node_Str",Collections.EMPTY_SET,missing);
      }
      @Override protected void cleanup(){
        for (        File f : desiredResults) {
          f.delete();
        }
      }
    }
.init(targetDir).run("String_Node_Str");
  }
  finally {
    if (targetDir != null) {
      FileUtils.whack(targetDir);
    }
  }
}

Fixed version (ground truth):
@Test public void simplePermanentRecursiveTransferDirOnlyTest() throws Exception {
  final String DIR="String_Node_Str";
  final String Y_SUBDIR="String_Node_Str";
  final String Z_SUBDIR="String_Node_Str";
  final Set<File> desiredResults=new HashSet<File>();
  final File origDir=File.createTempFile("String_Node_Str","String_Node_Str");
  origDir.delete();
  origDir.mkdir();
  final File dir=new File(origDir,DIR);
  dir.mkdir();
  final File ySubdir=new File(dir,Y_SUBDIR);
  ySubdir.mkdir();
  final File zSubdir=new File(dir,Y_SUBDIR + Z_SUBDIR);
  zSubdir.mkdir();
  File targetDir=null;
  try {
    targetDir=File.createTempFile("String_Node_Str","String_Node_Str");
    targetDir.delete();
    targetDir.mkdir();
    desiredResults.add(new File(targetDir.toURI().resolve(DIR)));
    desiredResults.add(new File(targetDir.toURI().resolve(DIR + Y_SUBDIR)));
    desiredResults.add(new File(targetDir.toURI().resolve(DIR + Y_SUBDIR + Z_SUBDIR)));
    new CommonPermTest(){
      @Override protected CommonPermTest init(      File targetDir){
        super.init(targetDir);
        return this;
      }
      @Override protected void addParts(      Outbound ob,      PayloadFilesManager instance) throws Exception {
        ob.attachFile("String_Node_Str",URI.create(DIR),"String_Node_Str",dir,true);
      }
      @Override protected void checkResults(      Inbound ib,      PayloadFilesManager instance) throws Exception {
        instance.processParts(ib);
        final Set<File> missing=new HashSet<File>();
        for (        File f : desiredResults) {
          if (!f.exists()) {
            missing.add(f);
          }
        }
        assertEquals("String_Node_Str",Collections.EMPTY_SET,missing);
      }
      @Override protected void cleanup(){
        for (        File f : desiredResults) {
          f.delete();
        }
        PayloadFilesManagerTest.cleanup(origDir);
      }
    }
.init(targetDir).run("String_Node_Str");
  }
  finally {
    if (targetDir != null) {
      FileUtils.whack(targetDir);
    }
  }
}