Макет HttpResponse не работает в JunitJAVA

Программисты JAVA общаются здесь
Гость
Макет HttpResponse не работает в Junit

Сообщение Гость »


Я пытаюсь использовать метод Junit для приведенного ниже Java-метода. Я правильно издевался над CloseableHttpClient и CloseableHttpResponse, но все равно получаю ноль, когда мой junit вызывает HttpResponse response = httpClient.execute(request); Я получаю нулевое значение ответа. Я что-то упустил?

Код: Выделить всё

private String getEndPointResponse() {
CloseableHttpClient httpClient = HttpClientBuilder
.create()
.setDefaultRequestConfig(RequestConfig.custom()
.setConnectTimeout(prod.httpTimeout() * 1000)
.build())
.build();

HttpGet request = new HttpGet("www.testendpoint");
try {
HttpResponse response = httpClient.execute(request);
int statusCode = response.getStatusLine().getStatusCode();
LOGGER.info("Response status: {}", statusCode);

if (statusCode == 200) {
LOGGER.info("Successfully retrieved data from: {}", url);
return IOUtils.toString(response.getEntity().getContent(), StandardCharsets.UTF_8);
}
} catch (Exception e) {
//
}

return null;
}
Junit

Код: Выделить всё

@AemTest
class ContnetTileTest {

@Mock
private CloseableHttpClient httpClient;

@Mock
private CloseableHttpResponse httpResponse;

@BeforeEach
void setUp() throws ProviderException {
context.load().json("/com/contentTile-page.json",
"/content/contentTile");
context.create().resource("/content/jcr:content");

context.registerService(CloseableHttpResponse.class, httpResponse);
context.registerService(CloseableHttpClient.class, httpClient);

provider = context.registerInjectActivateService(new ContnetTile());

}

@Test
public void testContnetTile() throws Exception {

when(httpClient.execute(any(HttpGet.class))).thenReturn(httpResponse);
when(httpResponse.getStatusLine()).thenReturn(mock(StatusLine.class));
when(httpResponse.getStatusLine().getStatusCode()).thenReturn(200);

//assertTrue(properties.containsKey("conTile"), "content prop");

}

}


Источник: https://stackoverflow.com/questions/781 ... g-in-junit

Вернуться в «JAVA»