У меня есть проблема, которая должна быть относительно простой, но я попадаю в глубокую кроличью нору
Я хотел бы провести модульное тестирование моего звонка в Elasticsearch - с поисковым запросом, включающим Aggs . Какой хороший способ подделать ответ?
Elasticsearch RestHighLevelClient
очень сложен ... приходится иметь дело со сложной сетью цепочек вызовов синтаксического анализатора XContentType / XContentType
Есть простой способ издеваться над вызовом? У меня есть примеры ответов JSON, которые можно было бы получить, если бы мы позвонили в ES из Kibana Devtools
private fun searchResponseFromContent(content: String): SearchResponse {
val xContentType = XContentType.JSON
val parser = xContentType.xContent().createParser(
NamedXContentRegistry.EMPTY, // this would not handle aggrgations
null,
content
)
return SearchResponse.fromXContent(parser)
}
Вообще говоря, люди просто не проверяют вызовы Elasticsearch в их модульном тесте? Кажется, нет хороших решений для насмешливых звонков в ES