### Question:
Match extends ESFunction { protected Match(List<Selector> parameters) {super(ESFunction.CONTAINS, parameters);} protected  Match(List<Selector> parameters); @Override QueryBuilder buildQuery();  }### Answer:
@Test public void testMatch() throws UnsupportedException, ExecutionException { List<Selector> parameters = new ArrayList<>(); TableName tableName = new TableName("catalog", "table"); parameters.add(new ColumnSelector(new ColumnName(tableName, "colName"))); parameters.add(new StringSelector("value")); parameters.add(new StringSelector("100%")); FunctionRelation function = new FunctionRelation(ESFunction.CONTAINS, parameters,tableName); ESFunction match = ESFunction.build(function); QueryBuilder builder = match.buildQuery(); String expected = "{\"match\":{\"colName\":{\"query\":\"value\",\"type\":\"boolean\",\"minimum_should_match\":\"100%\"}}}"; Assert.assertEquals(expected, builder.toString().replaceAll("\\s+", "")); }