package esquery import ( "testing" ) func TestMultiMatch(t *testing.T) { runMapTests(t, []mapTest{ { "simple multi_match", MultiMatch("value1", "value2").Fields("title"), map[string]interface{}{ "multi_match": map[string]interface{}{ "fields": []string{"title"}, "query": "value2", }, }, }, { "multi_match all params", MultiMatch("original"). Query("test"). Analyzer("stop"). Fields("title", "body"). AutoGenerateSynonymsPhraseQuery(true). Fuzziness("AUTO"). MaxExpansions(16). PrefixLength(12). TieBreaker(0.3). Boost(6.4). Transpositions(true). FuzzyRewrite("scoring_boolean"). Lenient(true). Operator(OperatorAnd). Type(MatchTypePhrase). MinimumShouldMatch("3<90%"). Slop(2). ZeroTermsQuery(ZeroTermsAll), map[string]interface{}{ "multi_match": map[string]interface{}{ "analyzer": "stop", "auto_generate_synonyms_phrase_query": true, "boost": 6.4, "fuzziness": "AUTO", "fuzzy_rewrite": "scoring_boolean", "lenient": true, "max_expansions": 16, "minimum_should_match": "3<90%", "prefix_length": 12, "transpositions": true, "type": "phrase", "tie_breaker": 0.3, "operator": "AND", "zero_terms_query": "all", "slop": 2, "query": "test", "fields": []string{"title", "body"}, }, }, }, }) }