--- "Custom normalizer with illegal filter in request": # Tests analyze api with normalizer. This is in the analysis-common module # because there are no filters that support multiTermAware - do: catch: bad_request indices.analyze: body: text: ABc explain: true filter: [word_delimiter] - match: { status: 400 } - match: { error.type: illegal_argument_exception } - match: { error.reason: "Custom normalizer may not use filter [word_delimiter]" } --- "Synonym filter with tokenizer": - do: indices.create: index: test_synonym body: settings: index: analysis: tokenizer: trigram: type: ngram min_gram: 3 max_gram: 3 filter: synonym: type: synonym synonyms: ["foobar => fred"] - do: indices.analyze: index: test_synonym body: tokenizer: trigram filter: [synonym] text: foobar - length: { tokens: 2 } - match: { tokens.0.token: fre } - match: { tokens.1.token: red } --- "Custom normalizer in request": - do: indices.analyze: body: text: ABc explain: true filter: ["lowercase"] - length: { detail.tokenizer.tokens: 1 } - length: { detail.tokenfilters.0.tokens: 1 } - match: { detail.tokenizer.name: keyword } - match: { detail.tokenizer.tokens.0.token: ABc } - match: { detail.tokenfilters.0.name: lowercase } - match: { detail.tokenfilters.0.tokens.0.token: abc }