Added rest tests for analysis-phonetic plugin
This commit is contained in:
parent
d57de59158
commit
eefb3cf41c
|
@ -15,8 +15,9 @@
|
||||||
<description>The Phonetic Analysis plugin integrates phonetic token filter analysis with elasticsearch.</description>
|
<description>The Phonetic Analysis plugin integrates phonetic token filter analysis with elasticsearch.</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<!-- You can add any specific project property here -->
|
<tests.rest.suite>analysis_phonetic</tests.rest.suite>
|
||||||
</properties>
|
<tests.rest.load_packaged>false</tests.rest.load_packaged>
|
||||||
|
</properties>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<dependency>
|
<dependency>
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
# Integration tests for Phonetic analysis components
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
"Metaphone":
|
||||||
|
- do:
|
||||||
|
indices.create:
|
||||||
|
index: phonetic_sample
|
||||||
|
body:
|
||||||
|
settings:
|
||||||
|
index:
|
||||||
|
analysis:
|
||||||
|
analyzer:
|
||||||
|
my_analyzer:
|
||||||
|
tokenizer: standard
|
||||||
|
filter: ["standard", "lowercase", "my_metaphone"]
|
||||||
|
filter:
|
||||||
|
my_metaphone:
|
||||||
|
type: phonetic
|
||||||
|
encoder: metaphone
|
||||||
|
replace: false
|
||||||
|
- do:
|
||||||
|
indices.analyze:
|
||||||
|
index: phonetic_sample
|
||||||
|
analyzer: my_analyzer
|
||||||
|
text: Joe Bloggs
|
||||||
|
|
||||||
|
- length: { tokens: 4 }
|
||||||
|
- match: { tokens.0.token: J }
|
||||||
|
- match: { tokens.1.token: joe }
|
||||||
|
- match: { tokens.2.token: BLKS }
|
||||||
|
- match: { tokens.3.token: bloggs }
|
||||||
|
|
|
@ -0,0 +1,30 @@
|
||||||
|
# Integration tests for Phonetic analysis components
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
"Double Metaphone":
|
||||||
|
- do:
|
||||||
|
indices.create:
|
||||||
|
index: phonetic_sample
|
||||||
|
body:
|
||||||
|
settings:
|
||||||
|
index:
|
||||||
|
analysis:
|
||||||
|
analyzer:
|
||||||
|
my_analyzer:
|
||||||
|
tokenizer: standard
|
||||||
|
filter: ["standard", "lowercase", "my_metaphone"]
|
||||||
|
filter:
|
||||||
|
my_metaphone:
|
||||||
|
type: phonetic
|
||||||
|
encoder: double_metaphone
|
||||||
|
max_code_len: 6
|
||||||
|
- do:
|
||||||
|
indices.analyze:
|
||||||
|
index: phonetic_sample
|
||||||
|
analyzer: my_analyzer
|
||||||
|
text: supercalifragilisticexpialidocious
|
||||||
|
|
||||||
|
- length: { tokens: 1 }
|
||||||
|
- match: { tokens.0.token: SPRKLF }
|
||||||
|
|
|
@ -0,0 +1,32 @@
|
||||||
|
# Integration tests for Phonetic analysis components
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
"Double Metaphone":
|
||||||
|
- do:
|
||||||
|
indices.create:
|
||||||
|
index: phonetic_sample
|
||||||
|
body:
|
||||||
|
settings:
|
||||||
|
index:
|
||||||
|
analysis:
|
||||||
|
analyzer:
|
||||||
|
my_analyzer:
|
||||||
|
tokenizer: standard
|
||||||
|
filter: ["standard", "lowercase", "beider_morse"]
|
||||||
|
filter:
|
||||||
|
beider_morse:
|
||||||
|
type: phonetic
|
||||||
|
encoder: beider_morse
|
||||||
|
rule_type: exact
|
||||||
|
name_type: ashkenazi
|
||||||
|
languageset: polish
|
||||||
|
- do:
|
||||||
|
indices.analyze:
|
||||||
|
index: phonetic_sample
|
||||||
|
analyzer: my_analyzer
|
||||||
|
text: Szwarc
|
||||||
|
|
||||||
|
- length: { tokens: 1 }
|
||||||
|
- match: { tokens.0.token: Svarts }
|
||||||
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
/*
|
||||||
|
* Licensed to Elasticsearch under one or more contributor
|
||||||
|
* license agreements. See the NOTICE file distributed with
|
||||||
|
* this work for additional information regarding copyright
|
||||||
|
* ownership. Elasticsearch licenses this file to you under
|
||||||
|
* the Apache License, Version 2.0 (the "License"); you may
|
||||||
|
* not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing,
|
||||||
|
* software distributed under the License is distributed on an
|
||||||
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
* KIND, either express or implied. See the License for the
|
||||||
|
* specific language governing permissions and limitations
|
||||||
|
* under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.elasticsearch.index.analysis;
|
||||||
|
|
||||||
|
import com.carrotsearch.randomizedtesting.annotations.Name;
|
||||||
|
import com.carrotsearch.randomizedtesting.annotations.ParametersFactory;
|
||||||
|
import org.elasticsearch.test.rest.ElasticsearchRestTestCase;
|
||||||
|
import org.elasticsearch.test.rest.RestTestCandidate;
|
||||||
|
import org.elasticsearch.test.rest.parser.RestTestParseException;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
|
public class AnalysisPhoneticRestIT extends ElasticsearchRestTestCase {
|
||||||
|
|
||||||
|
public AnalysisPhoneticRestIT(@Name("yaml") RestTestCandidate testCandidate) {
|
||||||
|
super(testCandidate);
|
||||||
|
}
|
||||||
|
|
||||||
|
@ParametersFactory
|
||||||
|
public static Iterable<Object[]> parameters() throws IOException, RestTestParseException {
|
||||||
|
return ElasticsearchRestTestCase.createParameters(0, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue