コード例 #1
0
  @Test
  public void testSortByKeywordLength() {
    final SolrURIRedirectModel redir = new SolrURIRedirectModel();

    final List<Comparator<SolrFacetSearchKeywordRedirectModel>> comparatorList =
        new ArrayList<Comparator<SolrFacetSearchKeywordRedirectModel>>();
    comparatorList.add(new KeywordLengthComparator());
    defaultKeywordRedirectSorter.setComparatorList(comparatorList);

    final List<SolrFacetSearchKeywordRedirectModel> toSort =
        new ArrayList<SolrFacetSearchKeywordRedirectModel>();
    final SolrFacetSearchKeywordRedirectModel val1 =
        createKeywordRedirect("jean", KeywordRedirectMatchType.CONTAINS, redir);
    final SolrFacetSearchKeywordRedirectModel val2 =
        createKeywordRedirect("jeans", KeywordRedirectMatchType.CONTAINS, redir);
    final SolrFacetSearchKeywordRedirectModel val3 =
        createKeywordRedirect("je", KeywordRedirectMatchType.EXACT, redir);
    final SolrFacetSearchKeywordRedirectModel val4 =
        createKeywordRedirect("jea", KeywordRedirectMatchType.EXACT, redir);

    toSort.add(val1);
    toSort.add(val2);
    toSort.add(val3);
    toSort.add(val4);

    Assertions.assertThat(toSort).containsSequence(val1, val2, val3, val4);

    final List<SolrFacetSearchKeywordRedirectModel> result =
        defaultKeywordRedirectSorter.sort(toSort);

    Assertions.assertThat(result).containsSequence(val4, val3, val2, val1);
  }
コード例 #2
0
  /** Test method for {@link DefaultKeywordRedirectSorter#sort(List)}. */
  @Test
  public void testSort() {
    final SolrURIRedirectModel redir = new SolrURIRedirectModel();

    final List<SolrFacetSearchKeywordRedirectModel> toSort =
        new ArrayList<SolrFacetSearchKeywordRedirectModel>();
    final SolrFacetSearchKeywordRedirectModel val1 =
        createKeywordRedirect("Ala", KeywordRedirectMatchType.CONTAINS, redir);
    final SolrFacetSearchKeywordRedirectModel val2 =
        createKeywordRedirect("Ala", KeywordRedirectMatchType.ENDS_WITH, redir);
    final SolrFacetSearchKeywordRedirectModel val3 =
        createKeywordRedirect("Ala", KeywordRedirectMatchType.STARTS_WITH, redir);
    final SolrFacetSearchKeywordRedirectModel val4 =
        createKeywordRedirect("Ala", KeywordRedirectMatchType.REGEX, redir);
    final SolrFacetSearchKeywordRedirectModel val5 =
        createKeywordRedirect("Ala", KeywordRedirectMatchType.EXACT, redir);

    toSort.add(val1);
    toSort.add(val2);
    toSort.add(val3);
    toSort.add(val4);
    toSort.add(val5);

    Assertions.assertThat(toSort).containsSequence(val1, val2, val3, val4, val5);

    final List<SolrFacetSearchKeywordRedirectModel> result =
        defaultKeywordRedirectSorter.sort(toSort);

    Assertions.assertThat(result).containsSequence(val5, val4, val3, val2, val1);
  }
コード例 #3
0
 @Before
 public void setUp() throws Exception {
   final List<KeywordRedirectMatchType> sortOrder = new ArrayList<KeywordRedirectMatchType>();
   sortOrder.add(KeywordRedirectMatchType.EXACT);
   sortOrder.add(KeywordRedirectMatchType.REGEX);
   sortOrder.add(KeywordRedirectMatchType.STARTS_WITH);
   sortOrder.add(KeywordRedirectMatchType.ENDS_WITH);
   // sortOrder.add(KeywordRedirectMatchType.CONTAINS); to test if non complete list is also good
   // handled
   defaultKeywordRedirectSorter.setSortOrder(sortOrder);
 }