[Demonstration 1]

[Buggy Method]
@Test
@SuppressWarnings("unchecked")
public void whenExtractMultipleParametersThenTheParsedParametersAreReturned() throws Exception {
    when(parameterParser.parse(ANY_TYPE, aParameter())).thenReturn(SPECIFIC_VALUE, ANOTHER_SPECIFIC_VALUE);
    assertThat(parametersExtractor.extract(asList(aParameter(), aParameter()), array(ANY_TYPE, ANY_TYPE)), aslist(containsOnly(sameInstance(SPECIFIC_VALUE), sameInstance(ANOTHER_SPECIFIC_VALUE))));
}

[Buggy Hunk]
aslist(containsOnly(sameInstance(SPECIFIC_VALUE), sameInstance(ANOTHER_SPECIFIC_VALUE))));

[Patch]
asList(containsOnly(sameInstance(SPECIFIC_VALUE), sameInstance(ANOTHER_SPECIFIC_VALUE))));

[Demonstration 2]

[Buggy Method]
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_search);
    getSupportActionBar().setDisplayShowHomeEnabled(true);
    getSupportActionBar().setLogo(R.drawable.ic_search);
    getSupportActionBar().setDisplayUseLogoEnabled(true);
    getSupportActionBar().setTitle("");
    //etQuery = (EditText) findViewById(R.id.etQuery);
    gvResults = (GridView) findViewById(R.id.gvResults);
    imageResults = new ArrayList<ImageResult>();
    aImageAdapter = new ImageResultsAdapter(this, imageResults);
    //link the adapter to the adapterview(gridview)
    gvResults.setAdapter(aImageAdapter);
    gvResults.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            Intent i = new Intent(SearchActivity.this, ImageDisplayActivity.class);
            ImageResult result = imageResults.get(position);
            //either be serializable or parcelable
            i.putExtra("image_result", result);
            startActivity(i);
        }
    });
    // Attach the listener to the AdapterView onCreate
    gvResults.setOnScrollListener(new EndlessScrollListener() {

        @Override
        public void onLoadMore(int page, int totalItemsCount) {
            // Triggered only when new data needs to be appended to the list
            // Add whatever code is needed to append new items to your AdapterView
            customLoadMoreDataFromApi(page, totalItemsCount);
            // or customLoadMoreDataFromApi(totalItemsCount);
        }
    });
    imageSize = "any";
    imageType = "any";
    imageColor = "";
    imageSite = "";
    query = "";
}

[Buggy Hunk]
gvResults.setOnItemClickListener(new OnItemClickListener() {

[Patch]
gvResults.setOnItemClickListener(new AdapterView.OnItemClickListener() {

[Demonstration 3]

[Buggy Method]
@Override
public void onSurfaceTextureAvailable(SurfaceTexture surface, int width, int height) {
    Log.d(TAG, "Creating Texture Created");
    this.mRecordingState = RecordingState.STOPPED;
    initializeCamera();
    if (mCamera != null) {
        try {
            mCamera.setPreviewTexture(surface);
        } catch (IOException e) {
            Log.e(TAG, "Unable to attach preview to camera!", e);
        }
        mCamera.startPreview();
    }
    if (mStartWhenInitialized) {
        try {
            StartRecording(this.mFilePath);
        } catch (Exception ex) {
            Log.e(TAG, "Error start camera", ex);
        }
    }
}

[Buggy Hunk]
StartRecording(this.mFilePath);

[Patch]
StartRecording(this.mFilePath, 0);