[Demonstration 1]

[Buggy Method]
@Test
public void shouldLogInteger() throws IOException {
    //region when
    Logger.log(1);
    Logger.log(0);
    Logger.log(-1);
    //endregion
    //region then
    assertSysoutContains("primitive: ");
    assertSysoutEquals("primitive: 1\nprimitive: 0\nprimitive: -1\n");
    //endregion
}

[Buggy Hunk]
assertSysoutEquals("primitive: 1\nprimitive: 0\nprimitive: -1\n");

[Patch]
assertSysoutEquals("primitive: 1" + lineSeparator() + "primitive: 0" + lineSeparator() + "primitive: -1" + lineSeparator());

[Demonstration 2]

[Buggy Method]
@SuppressWarnings("unchecked")
public static <D extends Document, S extends DocumentSet<D>> S loadFromJSONDirectory(String directoryPath, D genericDocument, S genericDataSet) {
    File directory = new File(directoryPath);
    DocumentSet<D> documentSet = genericDataSet.makeInstance();
    try {
        if (!directory.exists() || !directory.isDirectory())
            throw new IllegalArgumentException("Invalid directory: " + directory.getAbsolutePath());
        List<File> files = new ArrayList<File>();
        files.addAll(Arrays.asList(directory.listFiles()));
        int numTopLevelFiles = files.size();
        for (int i = 0; i < numTopLevelFiles; i++) if (files.get(i).isDirectory())
            files.addAll(Arrays.asList(files.get(i).listFiles()));
        List<File> tempFiles = new ArrayList<File>();
        for (File file : files) {
            if (!file.isDirectory() && file.getName().endsWith(".json")) {
                tempFiles.add(file);
            }
        }
        Collections.sort(tempFiles, new // Ensure determinism
        Comparator<File>() {

            public int compare(File o1, File o2) {
                return o1.getAbsolutePath().compareTo(o2.getAbsolutePath());
            }
        });
        documentSet.directoryPath = directoryPath;
        documentSet.documentLoader = new DocumentLoader<D>() {

            @Override
            public D load(String documentFileName) {
                return (D) genericDocument.makeInstanceFromJSONFile((new File(directoryPath, documentFileName)).getAbsolutePath());
            }
        };
        for (File file : tempFiles) {
            documentSet.fileNamesAndDocuments.put(file.getName(), new Pair<String, D>(file.getName(), null));
        }
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
    return (S) documentSet;
}

[Buggy Hunk]
if (!file.isDirectory() && file.getName().endsWith(".json")) {

[Patch]
if (!file.isDirectory()) {

[Demonstration 3]

[Buggy Method]
@Test
String runTests(Class cls) {
    return null;
}

[Buggy Hunk]
String runTests(Class cls) {

[Patch]
static String runTests(Class cls) {