use of org.springframework.data.elasticsearch.core.query.Query in project spring-data-elasticsearch by spring-projects.
the class SearchAsYouTypeTests method shouldReturnCorrectResultsForNotMatchQuery.
// DATAES-773
@Test
void shouldReturnCorrectResultsForNotMatchQuery() {
// given
loadEntities();
// when
Query query = new NativeSearchQuery(//
QueryBuilders.multiMatchQuery(//
"n mat", "suggest", "suggest._2gram", "suggest._3gram", "suggest._4gram").type(MultiMatchQueryBuilder.Type.BOOL_PREFIX));
IndexCoordinates index = IndexCoordinates.of("test-index-core-search-as-you-type");
List<SearchAsYouTypeEntity> result = //
operations.search(query, SearchAsYouTypeEntity.class, index).getSearchHits().stream().map(//
SearchHit::getContent).collect(Collectors.toList());
// then
assertThat(result.get(0).getId()).isEqualTo("4");
}
use of org.springframework.data.elasticsearch.core.query.Query in project spring-data-elasticsearch by spring-projects.
the class SourceFilterIntegrationTests method shouldOnlyReturnIncludedFieldsFromSourceFilterOnSearch.
// #1659
@Test
@DisplayName("should only return included fields from SourceFilter on search")
void shouldOnlyReturnIncludedFieldsFromSourceFilterOnSearch() {
Query query = Query.findAll();
query.addSourceFilter(new SourceFilter() {
@Override
public String[] getIncludes() {
return new String[] { "field2" };
}
@Override
public String[] getExcludes() {
return new String[] {};
}
});
SearchHits<Entity> entities = operations.search(query, Entity.class);
assertThat(entities).hasSize(1);
Entity entity = entities.getSearchHit(0).getContent();
assertThat(entity.getField1()).isNull();
assertThat(entity.getField2()).isNotNull();
assertThat(entity.getField3()).isNull();
}
use of org.springframework.data.elasticsearch.core.query.Query in project spring-data-elasticsearch by spring-projects.
the class SourceFilterIntegrationTests method shouldNotReturnExcludedFieldsFromSourceFilterOnMultiGet.
// #1659, #1678
@Test
@DisplayName("should not return excluded fields from SourceFilter on multiget")
void shouldNotReturnExcludedFieldsFromSourceFilterOnMultiGet() {
Query query = Query.multiGetQuery(Collections.singleton("42"));
query.addSourceFilter(new SourceFilter() {
@Override
public String[] getIncludes() {
return new String[] {};
}
@Override
public String[] getExcludes() {
return new String[] { "field2" };
}
});
List<MultiGetItem<Entity>> entities = operations.multiGet(query, Entity.class);
assertThat(entities).hasSize(1);
Entity entity = entities.get(0).getItem();
assertThat(entity.getField1()).isNotNull();
assertThat(entity.getField2()).isNull();
assertThat(entity.getField3()).isNotNull();
}
use of org.springframework.data.elasticsearch.core.query.Query in project spring-data-elasticsearch by spring-projects.
the class SourceFilterIntegrationTests method shouldOnlyReturnRequestedFieldsOnGMultiGet.
// #1659, #1678
@Test
@DisplayName("should only return requested fields on multiget")
void shouldOnlyReturnRequestedFieldsOnGMultiGet() {
// multiget has no fields, need sourcefilter here
Query query = Query.multiGetQuery(Collections.singleton("42"));
//
query.addSourceFilter(new FetchSourceFilterBuilder().withIncludes("field2").build());
List<MultiGetItem<Entity>> entities = operations.multiGet(query, Entity.class);
assertThat(entities).hasSize(1);
Entity entity = entities.get(0).getItem();
assertThat(entity.getField1()).isNull();
assertThat(entity.getField2()).isEqualTo("two");
assertThat(entity.getField3()).isNull();
}
use of org.springframework.data.elasticsearch.core.query.Query in project spring-data-elasticsearch by spring-projects.
the class MappingElasticsearchConverterUnitTests method shouldNotTryToCallPropertyConverterOnUpdatingCriteriaExists.
// #2080
@Test
@DisplayName("should not try to call property converter on updating criteria exists")
void shouldNotTryToCallPropertyConverterOnUpdatingCriteriaExists() {
// don't care if the query makes no sense, we just add all criteria without values
Query query = new CriteriaQuery(Criteria.where("fieldWithClassBasedConverter").exists().empty().notEmpty());
mappingElasticsearchConverter.updateQuery(query, EntityWithCustomValueConverters.class);
}
Aggregations