[Demonstration 1]

[Buggy Method]
public static UserEntity getUserEntity() {
    UserEntity userEntity = new UserEntity();
    userEntity.setName("test");
    userEntity.setLogin("login");
    userEntity.setRole(UserRole.ROLE_USER.toString());
    userEntity.setPassword("123123");
    return userEntity;
}

[Buggy Hunk]
userEntity.setPassword("123123");

[Patch]
userEntity.setPassword(PasswordHelper.encodePassword("123123"));

[Demonstration 2]

[Buggy Method]
private void launchInterstitial() {
    final ShowAdsApplication hideAdObj = ((ShowAdsApplication) getApplicationContext());
    boolean hideAd = hideAdObj.getHideAd();
    mInterstitialAd = new InterstitialAd(this);
    if (!hideAd && !mIsRemoveAdds) {
        mInterstitialAd.setAdUnitId(this.getResources().getString(R.string.interstitial));
        requestNewInterstitial();
        mInterstitialAd.setAdListener(new AdListener() {

            @Override
            public void onAdLoaded() {
                showInterstitial();
                hideAdObj.setHideAd(true);
            }
        });
    }
}

[Buggy Hunk]
final ShowAdsApplication hideAdObj = ((ShowAdsApplication) getApplicationContext());

[Patch]
hideAdObj = ((ShowAdsApplication) getApplicationContext());

[Demonstration 3]

[Buggy Method]
@Test
public void testDecodeBoundingBoxQuery() throws IOException, PackageEncodeException {
    final String table = "table1";
    final BoundingBox boundingBox = new BoundingBox(10d, 20d);
    final short sequenceNumber = sequenceNumberGenerator.getNextSequenceNummber();
    final QueryBoundingBoxRequest queryRequest = new QueryBoundingBoxRequest(sequenceNumber, new RoutingHeader(false), table, boundingBox, false, (short) 10);
    byte[] encodedPackage = networkPackageToByte(queryRequest);
    Assert.assertNotNull(encodedPackage);
    final ByteBuffer bb = NetworkPackageDecoder.encapsulateBytes(encodedPackage);
    boolean result = NetworkPackageDecoder.validateRequestPackageHeader(bb, NetworkConst.REQUEST_TYPE_QUERY);
    Assert.assertTrue(result);
    final QueryBoundingBoxRequest decodedPackage = QueryBoundingBoxRequest.decodeTuple(bb);
    Assert.assertEquals(queryRequest.getBoundingBox(), decodedPackage.getBoundingBox());
    Assert.assertEquals(queryRequest.getTable(), decodedPackage.getTable());
    Assert.assertEquals(queryRequest.isPagingEnabled(), decodedPackage.isPagingEnabled());
    Assert.assertEquals(queryRequest.getTuplesPerPage(), decodedPackage.getTuplesPerPage());
    Assert.assertEquals(NetworkConst.REQUEST_QUERY_BBOX, NetworkPackageDecoder.getQueryTypeFromRequest(bb));
}

[Buggy Hunk]
final QueryBoundingBoxRequest queryRequest = new QueryBoundingBoxRequest(sequenceNumber, new RoutingHeader(false), table, boundingBox, false, (short) 10);

[Patch]
final QueryBoundingBoxRequest queryRequest = new QueryBoundingBoxRequest(sequenceNumber, ROUTING_HEADER, table, boundingBox, false, (short) 10);