summaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests/predicate
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@online.no>2024-02-15 11:12:54 +0100
committerTor Egge <Tor.Egge@online.no>2024-02-15 11:12:54 +0100
commit2b368f3d23273add4cd042536b0de1beb6d86276 (patch)
treeddea9df57de01ad3ca24fb0a8db3723f7fdeb212 /searchlib/src/tests/predicate
parentd494044b85acd33bc9ecd4db56611e03032556d3 (diff)
Add search::predicate::PredicateIndexSaver.
Diffstat (limited to 'searchlib/src/tests/predicate')
-rw-r--r--searchlib/src/tests/predicate/document_features_store_test.cpp1
-rw-r--r--searchlib/src/tests/predicate/predicate_index_test.cpp14
2 files changed, 13 insertions, 2 deletions
diff --git a/searchlib/src/tests/predicate/document_features_store_test.cpp b/searchlib/src/tests/predicate/document_features_store_test.cpp
index 11ca20349c3..0e77a1be878 100644
--- a/searchlib/src/tests/predicate/document_features_store_test.cpp
+++ b/searchlib/src/tests/predicate/document_features_store_test.cpp
@@ -26,6 +26,7 @@ const uint32_t doc_id = 42;
void
save_document_features_store(DocumentFeaturesStore& store, vespalib::DataBuffer& buffer)
{
+ store.commit();
DataBufferWriter writer(buffer);
store.make_saver()->save(writer);
writer.flush();
diff --git a/searchlib/src/tests/predicate/predicate_index_test.cpp b/searchlib/src/tests/predicate/predicate_index_test.cpp
index 40b650e489a..6351807f4fc 100644
--- a/searchlib/src/tests/predicate/predicate_index_test.cpp
+++ b/searchlib/src/tests/predicate/predicate_index_test.cpp
@@ -4,6 +4,7 @@
#include <vespa/searchlib/predicate/predicate_index.h>
#include <vespa/searchlib/predicate/simple_index.hpp>
#include <vespa/searchlib/predicate/predicate_tree_annotator.h>
+#include <vespa/searchlib/util/data_buffer_writer.h>
#include <vespa/vespalib/testkit/testapp.h>
#include <vespa/searchlib/attribute/predicate_attribute.h>
#include <vespa/vespalib/util/stringfmt.h>
@@ -32,6 +33,15 @@ vespalib::GenerationHolder generation_holder;
DummyDocIdLimitProvider dummy_provider;
SimpleIndexConfig simple_index_config;
+void
+save_predicate_index(PredicateIndex& index, vespalib::DataBuffer& buffer)
+{
+ index.commit();
+ DataBufferWriter writer(buffer);
+ index.make_saver()->save(writer);
+ writer.flush();
+}
+
TEST("require that PredicateIndex can index empty documents") {
PredicateIndex index(generation_holder, dummy_provider, simple_index_config, 10);
EXPECT_EQUAL(0u, index.getZeroConstraintDocs().size());
@@ -292,7 +302,7 @@ TEST("require that PredicateIndex can be (de)serialized") {
index.commit();
vespalib::DataBuffer buffer;
- index.serialize(buffer);
+ save_predicate_index(index, buffer);
uint32_t doc_id_limit;
DocIdLimitFinder finder(doc_id_limit);
PredicateIndex index2(generation_holder, dummy_provider, simple_index_config,
@@ -336,7 +346,7 @@ TEST("require that DocumentFeaturesStore is restored on deserialization") {
EXPECT_FALSE(index.getIntervalIndex().lookup(hash).valid());
indexFeature(index, doc_id, min_feature, {{hash, interval}}, {{hash2, bounds}});
vespalib::DataBuffer buffer;
- index.serialize(buffer);
+ save_predicate_index(index, buffer);
uint32_t doc_id_limit;
DocIdLimitFinder finder(doc_id_limit);
PredicateIndex index2(generation_holder, dummy_provider, simple_index_config,