*/
@Test(dataProvider = "requestBuilderDataProvider")
public void testGetOldBuilders(RootBuilderWrapper<Long, Greeting> builders, Tone tone, boolean responseFilter) throws Exception
{
setupFilters(responseFilter);
Greeting greeting = generateTestGreeting("Test greeting.....", tone);
Long createdId = null;
try
{
createdId = createTestData(builders, greeting);
}
catch (RestLiResponseException e)
{
if (tone != Tone.INSULTING)
{
fail();
}
if (responseFilter)
{
assertEquals(e.getServiceErrorMessage(), RESP_FILTER_ERROR_MESSAGE);
assertEquals(e.getResponse().getStatus(), RESP_FILTER_ERROR_STATUS.getCode());
}
else
{
assertEquals(e.getServiceErrorMessage(), REQ_FILTER_ERROR_MESSAGE);
assertEquals(e.getResponse().getStatus(), REQ_FILTER_ERROR_STATUS.getCode());
}
verifyFilters(tone, responseFilter);
return;
}
if (tone == Tone.INSULTING)
{
fail();
}
if (!responseFilter)
{
greeting.setTone(mapToneForIncomingRequest(tone));
}
greeting.setId(createdId);
Request<Greeting> getRequest = builders.get().id(createdId).build();
Greeting getReturnedGreeting = REST_CLIENT.sendRequest(getRequest).getResponse().getEntity();
ValidateDataAgainstSchema.validate(getReturnedGreeting.data(), getReturnedGreeting.schema(),
new ValidationOptions());
assertEquals(getReturnedGreeting, greeting);
deleteAndVerifyTestData(builders, createdId);
verifyFilters(tone, responseFilter);
}