[Demonstration 1]

[Buggy Method]
@Test
public void testExtractSb2() {
    String filePath = getTestResourcePath("test.zip");
    String destPath = System.getProperty("java.io.tmpdir");
    try {
        Sb2.extractSb2(filePath, destPath);
    } catch (IOException e) {
        e.printStackTrace();
    }
    File destDir = new File(destPath);
    String[] childrenNames = { "a.txt", "b.txt", "c.txt" };
    assertEquals(destDir.list(), childrenNames);
}

[Buggy Hunk]
String filePath = getTestResourcePath("test.zip");

[Patch]
String filePath = Utils.getTestResourcePath("test.zip");

[Demonstration 2]

[Buggy Method]
private void unbindRuleContent(StyleRule styleRule) {
    unbind(styleRule.getMatchingInternalsObservable());
}

[Buggy Hunk]
unbind(styleRule.getMatchingInternalsObservable());

[Patch]
unbind(ruleMatchBindings.remove(styleRule));

[Demonstration 3]

[Buggy Method]
private void init() {
    //
    final Class closs = getClass();
    //
    final ImageIcon iconAdd = ResourceReader.readClassPathIcon(closs, "/Editor/icons/icon-add24.png");
    //
    setupPackage();
    //
    setupTables();
    // Our wrapper class for the delegate stuff.
    box_delegate = new DelegateCheckBox(delegate);
    buttonJPanel.add(box_delegate, 0);
    //
    boolean edit = false;
    // Testing it out.
    binder = new ManifestBinder(delegate, weapon);
    // Binding stuff manually.
    binder.bind(ManifestBinder.BOX_DELEGATE, box_delegate);
    binder.bind(ManifestBinder.BUTTON_GENERATE, button_generate);
    // Fields
    binder.bind(ManifestBinder.FIELD_DISPLAY, field_display);
    binder.bind(ManifestBinder.FIELD_REFERENCE, field_name);
    binder.bind(ManifestBinder.FIELD_NAME, field_name);
    binder.bind(ManifestBinder.FIELD_PLUGIN, field_plugin);
    binder.bind(ManifestBinder.FIELD_LOCATION, field_location);
    //binder.bind(ManifestBinder.FIELD_WIDTH, field_width);
    //binder.bind(ManifestBinder.FIELD_HEIGHT, field_height);
    // Invoke the wrath of the Manifest Binder. >:[
    binder.invoke();
    binder.setEdit(edit);
    //
    settingJPanel.setLayout(null);
    //
    if (edit) {
        //
        button_generate.setEnabled(false);
        // Keeps JFields from being automatically resized to abstract widths and heights by layout manager. My quick fix.
        settingJPanel.setLayout(null);
    }
    // Attribute hashmap copy
    editedStatMap = new HashMap<>();
    editedStatMap.putAll(weapon.getStatMap());
    //
    imageJPanel = new ImagePanel(renderJScrollPane);
    //
    addJButton.setIcon(iconAdd);
    //
    renderJScrollPane.setViewportView(imageJPanel);
}

[Buggy Hunk]
binder.bind(ManifestBinder.FIELD_REFERENCE, field_name);

[Patch]
binder.bind(ManifestBinder.FIELD_REFERENCE, field_id);