[Demonstration 1]

[Buggy Method]
@Test
public void showAllAvailableCars() throws Exception {
    carService.saveCar(car);
    List<Car> carList = carService.showAllAvailableCars();
    assertNotNull(carList);
    for (Car c : carList) {
        assertEquals(CarAvailability.AVAILABLE, currentCar.getAvailability());
    }
}

[Buggy Hunk]
assertEquals(CarAvailability.AVAILABLE, currentCar.getAvailability());

[Patch]
assertEquals(CarAvailability.AVAILABLE, c.getAvailability());

[Demonstration 2]

[Buggy Method]
private static String hashPassword(String password) {
    return encoder.encode(password);
}

[Buggy Hunk]
private static String hashPassword(String password) {

[Patch]
public static String hashPassword(String password) {

[Demonstration 3]

[Buggy Method]
public static final String md5(final String s) {
    final String MD5 = "MD5";
    try {
        // Create MD5 Hash
        MessageDigest digest = java.security.MessageDigest.getInstance(MD5);
        digest.update(s.getBytes());
        byte[] messageDigest = digest.digest();
        // Create Hex String
        StringBuilder hexString = new StringBuilder();
        for (byte aMessageDigest : messageDigest) {
            String h = Integer.toHexString(0xFF & aMessageDigest);
            while (h.length() < 2) h = "0" + h;
            hexString.append(h);
        }
        return hexString.toString();
    } catch (NoSuchAlgorithmException e) {
        e.printStackTrace();
    }
    return "";
}

[Buggy Hunk]
public static final String md5(final String s) {

[Patch]
public static String md5(final String s) {