use of org.molgenis.data.elasticsearch.generator.model.Index in project molgenis by molgenis.
the class ClientFacadeTest method testSearchFailedShards.
@Test
void testSearchFailedShards() throws IOException {
Index index = Index.create("index");
when(client.search(any(SearchRequest.class), eq(RequestOptions.DEFAULT))).thenReturn(searchResponse);
when(searchResponse.getFailedShards()).thenReturn(1);
when(searchResponse.getShardFailures()).thenReturn(singleShardSearchFailure);
var indices = List.of(index);
var exception = assertThrows(IndexSearchException.class, () -> clientFacade.search(queryBuilder, 0, 100, indices));
assertEquals(List.of("index"), exception.getIndices());
assertEquals("", exception.getQuery());
}
use of org.molgenis.data.elasticsearch.generator.model.Index in project molgenis by molgenis.
the class ClientFacadeTest method testIndexThrowsResourceNotFoundException.
@Test
void testIndexThrowsResourceNotFoundException() throws IOException {
Index index = Index.create("index");
when(document.getContent()).thenReturn(xContentBuilder);
when(document.getId()).thenReturn("id");
var cause = new ResourceNotFoundException("exception");
when(client.index(any(IndexRequest.class), eq(RequestOptions.DEFAULT))).thenThrow(cause);
var exception = assertThrows(UnknownIndexException.class, () -> clientFacade.index(index, document));
assertEquals(List.of("index"), exception.getIndices());
assertSame(cause, exception.getCause());
}
use of org.molgenis.data.elasticsearch.generator.model.Index in project molgenis by molgenis.
the class ClientFacadeTest method testIndexThrowsException.
@Test
void testIndexThrowsException() throws IOException {
Index index = Index.create("index");
when(document.getContent()).thenReturn(xContentBuilder);
when(document.getId()).thenReturn("id");
var cause = new ElasticsearchException("exception");
when(client.index(any(IndexRequest.class), eq(RequestOptions.DEFAULT))).thenThrow(cause);
var exception = assertThrows(DocumentIndexException.class, () -> clientFacade.index(index, document));
assertEquals(List.of("index"), exception.getIndices());
assertSame(cause, exception.getCause());
}
use of org.molgenis.data.elasticsearch.generator.model.Index in project molgenis by molgenis.
the class ClientFacadeTest method testIndexShardFailure.
@Test
void testIndexShardFailure() throws IOException {
Index index = Index.create("index");
when(document.getContent()).thenReturn(xContentBuilder);
when(document.getId()).thenReturn("id");
when(client.index(any(IndexRequest.class), eq(RequestOptions.DEFAULT))).thenReturn(indexResponse);
when(indexResponse.getShardInfo()).thenReturn(shardInfo);
when(shardInfo.getSuccessful()).thenReturn(0);
when(shardInfo.getFailures()).thenReturn(singleShardIndexResponseFailure);
var exception = assertThrows(DocumentIndexException.class, () -> clientFacade.index(index, document));
assertEquals(List.of("index"), exception.getIndices());
assertEquals("id", exception.getDocumentId());
}
use of org.molgenis.data.elasticsearch.generator.model.Index in project molgenis by molgenis.
the class ClientFacadeTest method testDeleteResourceNotFound.
@Test
void testDeleteResourceNotFound() throws IOException {
Index index = Index.create("index");
when(document.getId()).thenReturn("id");
when(client.delete(any(DeleteRequest.class), eq(RequestOptions.DEFAULT))).thenThrow(new ResourceNotFoundException("exception"));
var exception = assertThrows(UnknownIndexException.class, () -> clientFacade.deleteById(index, document));
assertEquals(List.of("index"), exception.getIndices());
}
Aggregations