Search in sources :

Example 1 with FragmentSearchQuerySpec

use of org.apache.druid.query.search.FragmentSearchQuerySpec in project druid by druid-io.

the class SearchQuerySpecDimExtractionFnTest method testCaseSensitiveExtraction2.

@Test
public void testCaseSensitiveExtraction2() {
    SearchQuerySpec spec = new FragmentSearchQuerySpec(Arrays.asList("To", "yo"), true);
    ExtractionFn extractionFn = new SearchQuerySpecDimExtractionFn(spec);
    List<String> expected = ImmutableList.of("Tokyo", "Toyokawa");
    List<String> extracted = new ArrayList<>();
    for (String str : TEST_STRINGS) {
        String res = extractionFn.apply(str);
        if (res != null) {
            extracted.add(res);
        }
    }
    Assert.assertEquals(expected, extracted);
}
Also used : SearchQuerySpec(org.apache.druid.query.search.SearchQuerySpec) FragmentSearchQuerySpec(org.apache.druid.query.search.FragmentSearchQuerySpec) FragmentSearchQuerySpec(org.apache.druid.query.search.FragmentSearchQuerySpec) ArrayList(java.util.ArrayList) Test(org.junit.Test)

Example 2 with FragmentSearchQuerySpec

use of org.apache.druid.query.search.FragmentSearchQuerySpec in project druid by druid-io.

the class SearchQuerySpecDimExtractionFnTest method testSerde.

@Test
public void testSerde() throws Exception {
    ObjectMapper objectMapper = new DefaultObjectMapper();
    SearchQuerySpec spec = new FragmentSearchQuerySpec(Arrays.asList("to", "yo"), true);
    ExtractionFn extractionFn = new SearchQuerySpecDimExtractionFn(spec);
    ExtractionFn extractionFn2 = objectMapper.readValue(objectMapper.writeValueAsBytes(extractionFn), ExtractionFn.class);
    FragmentSearchQuerySpec spec2 = (FragmentSearchQuerySpec) ((SearchQuerySpecDimExtractionFn) extractionFn2).getSearchQuerySpec();
    Assert.assertEquals(extractionFn, extractionFn2);
    Assert.assertEquals(true, spec2.isCaseSensitive());
    Assert.assertEquals(ImmutableList.of("to", "yo"), spec2.getValues());
}
Also used : SearchQuerySpec(org.apache.druid.query.search.SearchQuerySpec) FragmentSearchQuerySpec(org.apache.druid.query.search.FragmentSearchQuerySpec) FragmentSearchQuerySpec(org.apache.druid.query.search.FragmentSearchQuerySpec) DefaultObjectMapper(org.apache.druid.jackson.DefaultObjectMapper) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) DefaultObjectMapper(org.apache.druid.jackson.DefaultObjectMapper) Test(org.junit.Test)

Example 3 with FragmentSearchQuerySpec

use of org.apache.druid.query.search.FragmentSearchQuerySpec in project druid by druid-io.

the class SearchQuerySpecDimExtractionFnTest method testExtraction.

@Test
public void testExtraction() {
    SearchQuerySpec spec = new FragmentSearchQuerySpec(Arrays.asList("tO", "yO"));
    ExtractionFn extractionFn = new SearchQuerySpecDimExtractionFn(spec);
    List<String> expected = ImmutableList.of("Kyoto", "Tokyo", "Toyokawa", "Yorktown");
    List<String> extracted = new ArrayList<>();
    for (String str : TEST_STRINGS) {
        String res = extractionFn.apply(str);
        if (res != null) {
            extracted.add(res);
        }
    }
    Assert.assertEquals(expected, extracted);
}
Also used : SearchQuerySpec(org.apache.druid.query.search.SearchQuerySpec) FragmentSearchQuerySpec(org.apache.druid.query.search.FragmentSearchQuerySpec) FragmentSearchQuerySpec(org.apache.druid.query.search.FragmentSearchQuerySpec) ArrayList(java.util.ArrayList) Test(org.junit.Test)

Example 4 with FragmentSearchQuerySpec

use of org.apache.druid.query.search.FragmentSearchQuerySpec in project druid by druid-io.

the class SearchQuerySpecDimExtractionFnTest method testCaseSensitiveExtraction.

@Test
public void testCaseSensitiveExtraction() {
    SearchQuerySpec spec = new FragmentSearchQuerySpec(Arrays.asList("to", "yo"), true);
    ExtractionFn extractionFn = new SearchQuerySpecDimExtractionFn(spec);
    List<String> expected = ImmutableList.of("Kyoto");
    List<String> extracted = new ArrayList<>();
    for (String str : TEST_STRINGS) {
        String res = extractionFn.apply(str);
        if (res != null) {
            extracted.add(res);
        }
    }
    Assert.assertEquals(expected, extracted);
}
Also used : SearchQuerySpec(org.apache.druid.query.search.SearchQuerySpec) FragmentSearchQuerySpec(org.apache.druid.query.search.FragmentSearchQuerySpec) FragmentSearchQuerySpec(org.apache.druid.query.search.FragmentSearchQuerySpec) ArrayList(java.util.ArrayList) Test(org.junit.Test)

Aggregations

FragmentSearchQuerySpec (org.apache.druid.query.search.FragmentSearchQuerySpec)4 SearchQuerySpec (org.apache.druid.query.search.SearchQuerySpec)4 Test (org.junit.Test)4 ArrayList (java.util.ArrayList)3 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)1 DefaultObjectMapper (org.apache.druid.jackson.DefaultObjectMapper)1