test docstore in proptest

This commit is contained in:
Pascal Seitz
2021-07-01 10:15:42 +02:00
parent 7413f87265
commit 8044ec38da

View File

@@ -797,6 +797,7 @@ mod tests {
use crate::query::TermQuery;
use crate::schema::Cardinality;
use crate::schema::IntOptions;
use crate::schema::STORED;
use crate::schema::{self, IndexRecordOption, FAST, INDEXED, STRING};
use crate::Index;
use crate::ReloadPolicy;
@@ -1376,10 +1377,10 @@ mod tests {
force_merge: bool,
) -> crate::Result<()> {
let mut schema_builder = schema::Schema::builder();
let id_field = schema_builder.add_u64_field("id", FAST | INDEXED);
let id_field = schema_builder.add_u64_field("id", FAST | INDEXED | STORED);
let multi_numbers = schema_builder.add_u64_field(
"multi_numbers",
IntOptions::default().set_fast(Cardinality::MultiValues),
IntOptions::default().set_fast(Cardinality::MultiValues).set_stored(),
);
let schema = schema_builder.build();
let settings = if sort_index {
@@ -1450,6 +1451,19 @@ mod tests {
}
}
for segment_reader in searcher.segment_readers().iter() {
let store_reader = segment_reader.get_store_reader().unwrap();
for doc in store_reader.iter(segment_reader.delete_bitset()) {
let id = doc.unwrap().get_first(id_field).unwrap().u64_value().unwrap();
assert!(expected_ids.contains(&id));
}
for doc_id in segment_reader.doc_ids_alive() {
let id = store_reader.get(doc_id).unwrap().get_first(id_field).unwrap().u64_value().unwrap();
assert!(expected_ids.contains(&id));
let id2 = store_reader.get(doc_id).unwrap().get_first(multi_numbers).unwrap().u64_value().unwrap();
assert_eq!(id, id2);
}
}
Ok(())
}