@Test public void minimumShouldMatch_error_multipleConflictingConstraints() { QueryBuilder queryBuilder = helper.queryBuilder( IndexedEntity.class ); thrown.expect( SearchException.class ); thrown.expectMessage( "Multiple conflicting minimumShouldMatch constraints" ); queryBuilder.bool().minimumShouldMatchNumber( -1 ).minimumShouldMatchPercent( 100 ); }
.minimumShouldMatchNumber( 1 ) .should( queryBuilder.keyword().onField( "field1" ).matching( FIELD1_VALUE1 ).createQuery() ) .should( queryBuilder.keyword().onField( "field2" ).matching( FIELD2_VALUE3 ).createQuery() ) .minimumShouldMatchNumber( 2 ) .should( queryBuilder.keyword().onField( "field4" ).matching( FIELD4_VALUE1AND2 ).createQuery() ) .should( queryBuilder.keyword().onField( "field2" ).matching( FIELD2_VALUE1 ).createQuery() ) .minimumShouldMatchNumber( 2 ) .should( queryBuilder.keyword().onField( "field4" ).matching( FIELD4_VALUE1AND2 ).createQuery() ) .should( queryBuilder.keyword().onField( "field2" ).matching( FIELD2_VALUE1 ).createQuery() )
.minimumShouldMatchNumber( -1 ) .should( queryBuilder.keyword().onField( "field1" ).matching( FIELD1_VALUE1 ).createQuery() ) .should( queryBuilder.keyword().onField( "field2" ).matching( FIELD2_VALUE3 ).createQuery() ) .minimumShouldMatchNumber( -1 ) .should( queryBuilder.keyword().onField( "field4" ).matching( FIELD4_VALUE1AND2 ).createQuery() ) .should( queryBuilder.keyword().onField( "field2" ).matching( FIELD2_VALUE1 ).createQuery() )