mirror of
https://github.com/meilisearch/meilisearch.git
synced 2024-11-27 20:45:06 +08:00
24 lines
838 B
Rust
24 lines
838 B
Rust
|
use big_s::S;
|
||
|
use milli::Criterion::{Attribute, Exactness, Proximity, Typo, Words};
|
||
|
use milli::{AscDesc, Error, Search, UserError};
|
||
|
|
||
|
use crate::search::{self, EXTERNAL_DOCUMENTS_IDS};
|
||
|
|
||
|
#[test]
|
||
|
fn sort_ranking_rule_missing() {
|
||
|
let criteria = vec![Words, Typo, Proximity, Attribute, Exactness];
|
||
|
// sortables: `tag` and `asc_desc_rank`
|
||
|
let index = search::setup_search_index_with_criteria(&criteria);
|
||
|
let rtxn = index.read_txn().unwrap();
|
||
|
|
||
|
let mut search = Search::new(&rtxn, &index);
|
||
|
search.query(search::TEST_QUERY);
|
||
|
search.limit(EXTERNAL_DOCUMENTS_IDS.len());
|
||
|
search.authorize_typos(true);
|
||
|
search.optional_words(true);
|
||
|
search.sort_criteria(vec![AscDesc::Asc(S("tag"))]);
|
||
|
|
||
|
let result = search.execute();
|
||
|
assert!(matches!(result, Err(Error::UserError(UserError::SortRankingRuleMissing))));
|
||
|
}
|