aboutsummaryrefslogtreecommitdiffstats
path: root/eval/src/tests/streamed/value/streamed_value_test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'eval/src/tests/streamed/value/streamed_value_test.cpp')
-rw-r--r--eval/src/tests/streamed/value/streamed_value_test.cpp27
1 files changed, 16 insertions, 11 deletions
diff --git a/eval/src/tests/streamed/value/streamed_value_test.cpp b/eval/src/tests/streamed/value/streamed_value_test.cpp
index 05d6e20451c..5221c4eda64 100644
--- a/eval/src/tests/streamed/value/streamed_value_test.cpp
+++ b/eval/src/tests/streamed/value/streamed_value_test.cpp
@@ -16,8 +16,12 @@ using namespace vespalib::eval::test;
using vespalib::make_string_short::fmt;
-using PA = std::vector<vespalib::stringref *>;
-using CPA = std::vector<const vespalib::stringref *>;
+using PA = std::vector<label_t *>;
+using CPA = std::vector<const label_t *>;
+
+using Handle = SharedStringRepo::Handle;
+
+vespalib::string as_str(label_t label) { return Handle::string_from_id(label); }
std::vector<Layout> layouts = {
{},
@@ -98,17 +102,18 @@ TEST(StreamedValueTest, streamed_value_can_be_built_and_inspected) {
std::unique_ptr<Value> value = builder->build(std::move(builder));
EXPECT_EQ(value->index().size(), 6);
auto view = value->index().create_view({0});
- vespalib::stringref query = "b";
- vespalib::stringref label;
+ Handle query_handle("b");
+ label_t query = query_handle.id();
+ label_t label;
size_t subspace;
+ std::map<vespalib::string,size_t> result;
view->lookup(CPA{&query});
- EXPECT_TRUE(view->next_result(PA{&label}, subspace));
- EXPECT_EQ(label, "aa");
- EXPECT_EQ(subspace, 2);
- EXPECT_TRUE(view->next_result(PA{&label}, subspace));
- EXPECT_EQ(label, "bb");
- EXPECT_EQ(subspace, 3);
- EXPECT_FALSE(view->next_result(PA{&label}, subspace));
+ while (view->next_result(PA{&label}, subspace)) {
+ result[as_str(label)] = subspace;
+ }
+ EXPECT_EQ(result.size(), 2);
+ EXPECT_EQ(result["aa"], 2);
+ EXPECT_EQ(result["bb"], 3);
}
TEST(StreamedValueTest, new_generic_join_works_for_streamed_values) {