summaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests/attribute/reference_attribute
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@broadpark.no>2021-02-12 12:34:28 +0100
committerTor Egge <Tor.Egge@broadpark.no>2021-02-12 12:34:28 +0100
commit273d57f2ee2b74f47d1b1e0b37235c36114c8e80 (patch)
tree07b6c6450170bff96107eccf15e5b740e7258c5c /searchlib/src/tests/attribute/reference_attribute
parent189f3f7675e2979c32df56ab98085ffc3aa3643b (diff)
Add unit tests for active boundary checks.
Diffstat (limited to 'searchlib/src/tests/attribute/reference_attribute')
-rw-r--r--searchlib/src/tests/attribute/reference_attribute/reference_attribute_test.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/searchlib/src/tests/attribute/reference_attribute/reference_attribute_test.cpp b/searchlib/src/tests/attribute/reference_attribute/reference_attribute_test.cpp
index 793cb3b4cef..b6b8e0a60e8 100644
--- a/searchlib/src/tests/attribute/reference_attribute/reference_attribute_test.cpp
+++ b/searchlib/src/tests/attribute/reference_attribute/reference_attribute_test.cpp
@@ -256,6 +256,18 @@ TEST_F(ReferenceAttributeTest, reference_for_a_document_can_be_cleared)
assertNoRef(2);
}
+TEST_F(ReferenceAttributeTest, lid_beyond_range_is_mapped_to_zero)
+{
+ auto factory = std::make_shared<MyGidToLidMapperFactory>();
+ setGidToLidMapperFactory(factory);
+ ensureDocIdLimit(5);
+ _attr->addDocs(1);
+ set(5, toGid(doc2));
+ EXPECT_EQ(0, _attr->getTargetLid(5));
+ _attr->commit();
+ EXPECT_EQ(17, _attr->getTargetLid(5));
+}
+
TEST_F(ReferenceAttributeTest, read_guard_protects_references)
{
ensureDocIdLimit(5);