Fix tests compilation after changes to ExternalDocumentsIds API

This commit is contained in:
Louis Dureuil 2023-10-30 13:34:07 +01:00
parent abf424ebfc
commit 58690dfb19
No known key found for this signature in database
4 changed files with 22 additions and 16 deletions

View File

@ -332,7 +332,7 @@ pub fn snap_geo_faceted_documents_ids(index: &Index) -> String {
} }
pub fn snap_external_documents_ids(index: &Index) -> String { pub fn snap_external_documents_ids(index: &Index) -> String {
let rtxn = index.read_txn().unwrap(); let rtxn = index.read_txn().unwrap();
let external_ids = index.external_documents_ids(&rtxn).unwrap().to_hash_map(); let external_ids = index.external_documents_ids().to_hash_map(&rtxn).unwrap();
// ensure fixed order (not guaranteed by hashmap) // ensure fixed order (not guaranteed by hashmap)
let mut external_ids: Vec<(String, u32)> = external_ids.into_iter().collect(); let mut external_ids: Vec<(String, u32)> = external_ids.into_iter().collect();
external_ids.sort_by(|(l, _), (r, _)| l.cmp(r)); external_ids.sort_by(|(l, _), (r, _)| l.cmp(r));

View File

@ -122,7 +122,7 @@ mod tests {
assert!(index.words_fst(&rtxn).unwrap().is_empty()); assert!(index.words_fst(&rtxn).unwrap().is_empty());
assert!(index.words_prefixes_fst(&rtxn).unwrap().is_empty()); assert!(index.words_prefixes_fst(&rtxn).unwrap().is_empty());
assert!(index.external_documents_ids(&rtxn).unwrap().is_empty()); assert!(index.external_documents_ids().is_empty(&rtxn).unwrap());
assert!(index.documents_ids(&rtxn).unwrap().is_empty()); assert!(index.documents_ids(&rtxn).unwrap().is_empty());
assert!(index.field_distribution(&rtxn).unwrap().is_empty()); assert!(index.field_distribution(&rtxn).unwrap().is_empty());
assert!(index.geo_rtree(&rtxn).unwrap().is_none()); assert!(index.geo_rtree(&rtxn).unwrap().is_none());

View File

@ -1094,8 +1094,8 @@ mod tests {
let txn = index.read_txn().unwrap(); let txn = index.read_txn().unwrap();
assert_eq!(index.primary_key(&txn).unwrap(), Some("objectId")); assert_eq!(index.primary_key(&txn).unwrap(), Some("objectId"));
let external_documents_ids = index.external_documents_ids(&txn).unwrap(); let external_documents_ids = index.external_documents_ids();
assert!(external_documents_ids.get("30").is_none()); assert!(external_documents_ids.get(&txn, "30").unwrap().is_none());
index index
.add_documents(documents!([ .add_documents(documents!([
@ -1104,8 +1104,8 @@ mod tests {
.unwrap(); .unwrap();
let wtxn = index.write_txn().unwrap(); let wtxn = index.write_txn().unwrap();
let external_documents_ids = index.external_documents_ids(&wtxn).unwrap(); let external_documents_ids = index.external_documents_ids();
assert!(external_documents_ids.get("30").is_some()); assert!(external_documents_ids.get(&wtxn, "30").unwrap().is_some());
wtxn.commit().unwrap(); wtxn.commit().unwrap();
index index
@ -1399,8 +1399,8 @@ mod tests {
index.add_documents(documents!({ "a" : { "b" : { "c" : 1 }}})).unwrap(); index.add_documents(documents!({ "a" : { "b" : { "c" : 1 }}})).unwrap();
let rtxn = index.read_txn().unwrap(); let rtxn = index.read_txn().unwrap();
let external_documents_ids = index.external_documents_ids(&rtxn).unwrap(); let external_documents_ids = index.external_documents_ids();
assert!(external_documents_ids.get("1").is_some()); assert!(external_documents_ids.get(&rtxn, "1").unwrap().is_some());
} }
#[test] #[test]
@ -1665,7 +1665,7 @@ mod tests {
let wtxn = index.read_txn().unwrap(); let wtxn = index.read_txn().unwrap();
let map = index.external_documents_ids(&wtxn).unwrap().to_hash_map(); let map = index.external_documents_ids().to_hash_map(&wtxn).unwrap();
let ids = map.values().collect::<HashSet<_>>(); let ids = map.values().collect::<HashSet<_>>();
assert_eq!(ids.len(), map.len()); assert_eq!(ids.len(), map.len());
@ -2669,10 +2669,10 @@ mod tests {
index: &'t TempIndex, index: &'t TempIndex,
external_ids: &[&str], external_ids: &[&str],
) -> Vec<u32> { ) -> Vec<u32> {
let external_document_ids = index.external_documents_ids(wtxn).unwrap(); let external_document_ids = index.external_documents_ids();
let ids_to_delete: Vec<u32> = external_ids let ids_to_delete: Vec<u32> = external_ids
.iter() .iter()
.map(|id| external_document_ids.get(id.as_bytes()).unwrap()) .map(|id| external_document_ids.get(&wtxn, id).unwrap().unwrap())
.collect(); .collect();
// Delete some documents. // Delete some documents.
@ -3052,9 +3052,13 @@ mod tests {
let rtxn = index.read_txn().unwrap(); let rtxn = index.read_txn().unwrap();
// get internal docids from deleted external document ids // get internal docids from deleted external document ids
let results = index.external_documents_ids(&rtxn).unwrap(); let results = index.external_documents_ids();
for id in deleted_external_ids { for id in deleted_external_ids {
assert!(results.get(id).is_none(), "The document {} was supposed to be deleted", id); assert!(
results.get(&rtxn, id).unwrap().is_none(),
"The document {} was supposed to be deleted",
id
);
} }
drop(rtxn); drop(rtxn);
} }

View File

@ -88,9 +88,11 @@ pub fn setup_search_index_with_criteria(criteria: &[Criterion]) -> Index {
pub fn internal_to_external_ids(index: &Index, internal_ids: &[DocumentId]) -> Vec<String> { pub fn internal_to_external_ids(index: &Index, internal_ids: &[DocumentId]) -> Vec<String> {
let rtxn = index.read_txn().unwrap(); let rtxn = index.read_txn().unwrap();
let docid_map = index.external_documents_ids(&rtxn).unwrap(); let docid_map = index.external_documents_ids();
let docid_map: std::collections::HashMap<_, _> = let docid_map: std::collections::HashMap<_, _> = EXTERNAL_DOCUMENTS_IDS
EXTERNAL_DOCUMENTS_IDS.iter().map(|id| (docid_map.get(id).unwrap(), id)).collect(); .iter()
.map(|id| (docid_map.get(&rtxn, id).unwrap().unwrap(), id))
.collect();
internal_ids.iter().map(|id| docid_map.get(id).unwrap().to_string()).collect() internal_ids.iter().map(|id| docid_map.get(id).unwrap().to_string()).collect()
} }