jhorcicka commented on a change in pull request #248:
URL: https://github.com/apache/metamodel/pull/248#discussion_r576849609



##########
File path: 
elasticsearch/common/src/test/java/org/apache/metamodel/elasticsearch/common/ElasticSearchUtilsTest.java
##########
@@ -60,4 +69,40 @@ public void testCreateRowWithParsableDates() throws 
Exception {
         assertTrue(stringValue instanceof String);
         assertTrue(dateValue instanceof Date);
     }
+
+    /**
+     * For text-based conditions a 'match' query is recommended (instead of 
'term' query).
+     */
+    public void testMatchQueryIsCreatedForTextEqualTo() {
+        final SelectItem selectItem = new SelectItem(new 
MutableColumn("column_name", ColumnType.STRING));
+        final FilterItem filterItem = new FilterItem(selectItem, 
OperatorType.EQUALS_TO, "text-value");
+        final QueryBuilder queryBuilder =
+                
ElasticSearchUtils.createQueryBuilderForSimpleWhere(Collections.singletonList(filterItem),
 null);
+        assertEquals("match", queryBuilder.getName());
+    }
+
+    /**
+     * For text-based conditions a 'match' query is recommended (instead of 
'term' query).
+     * In case of 'DIFFERENT_FROM', we need a 'bool' query with 'must not' and 
'match' query.
+     */
+    public void testBoolQueryIsCreatedForTextDifferentFrom() {
+        final SelectItem selectItem = new SelectItem(new 
MutableColumn("column_name", ColumnType.STRING));
+        final FilterItem filterItem = new FilterItem(selectItem, 
OperatorType.DIFFERENT_FROM, "text-value");
+        final QueryBuilder queryBuilder =
+                
ElasticSearchUtils.createQueryBuilderForSimpleWhere(Collections.singletonList(filterItem),
 null);
+        assertEquals("bool", queryBuilder.getName());

Review comment:
       Thanks for the tip! Updated. 




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to