Как я могу заставить Mockito возвращать разные значения HttpEntity в ответ на разные URI?
Тест собирается сделать несколько HTTP-запросов (все они являются запросами POST) с mockHttpClient.
HttpEntity httpEntity = EntityBuilder.create().setText(response).build();
PowerMockito.when(response, "getEntity").thenReturn(httpEntity);
И сам тест спроектирован следующим образом:
CloseableHttpClient client = mockHttpClient(200, HTTP_ENTITY);
runTest();
Mockito.verify(client, Mockito.times(2)).execute(Mockito.any());
Для того, чтобы вышеуказанный тест возвратил разные сущности HTTP, я попробовал следующее:
CloseableHttpClient client = Mockito.mock(CloseableHttpClient.class);
Mockito.when(client.execute(new HttpPost("http://127.0.0.1:8000/new/a"))).thenReturn(resp1);
Mockito.when(client.execute(new HttpPost("http://127.0.0.1:8000/new/a/b"))).thenReturn(resp2);
Но яневозможно создать различные объекты http и получить в ответ на основе URI в запросе.