final String sourceToRecord = "http://google.com";
originalHttpLifecycles.get(0).setResponse(StubResponse.newStubResponse("200", sourceToRecord));
stubbedDataManager.resetStubHttpLifecycles(originalHttpLifecycles);
final StubResponse expectedResponse = stubbedDataManager.getStubHttpLifecycles().get(0).getResponse(true);
assertThat(expectedResponse.getBody()).isEqualTo(sourceToRecord);
assertThat(expectedResponse.isRecordingRequired()).isTrue();
final String actualResponseText = "OK, this is recorded response text!";
final StubRequest matchedRequest = stubbedDataManager.getStubHttpLifecycles().get(0).getRequest();
when(mockStubbyHttpTransport.fetchRecordableHTTPResponse(eq(matchedRequest), anyString())).thenReturn(new StubbyResponse(200, actualResponseText));
for (int idx = 0; idx < 5; idx++) {
final StubResponse actualResponse = stubbedDataManager.findStubResponseFor(originalHttpLifecycles.get(0).getRequest());
assertThat(actualResponse.getBody()).isEqualTo(actualResponseText);
assertThat(expectedResponse.getBody()).isEqualTo(actualResponse.getBody());
assertThat(expectedResponse.isRecordingRequired()).isFalse();
assertThat(actualResponse.isRecordingRequired()).isFalse();
}
verify(mockStubbyHttpTransport, times(1)).fetchRecordableHTTPResponse(eq(matchedRequest), anyString());
}