aboutsummaryrefslogtreecommitdiffstats
path: root/searchcore/src/tests/proton/attribute/attribute_initializer/attribute_initializer_test.cpp
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@online.no>2023-02-06 16:18:49 +0100
committerTor Egge <Tor.Egge@online.no>2023-02-06 18:56:51 +0100
commit5337bc72e789586875f4732950841c9720eaff5b (patch)
tree4c9a9a5979e196b053e6162dd315970b5ef3e208 /searchcore/src/tests/proton/attribute/attribute_initializer/attribute_initializer_test.cpp
parent1a37850993a673e79182eb62220d063878d48410 (diff)
Reapply make attribute collection spec serial num optional.
Pass reconfig serial num explicitly to various reconfigure member functions since it might not be available from attribute collection spec.
Diffstat (limited to 'searchcore/src/tests/proton/attribute/attribute_initializer/attribute_initializer_test.cpp')
-rw-r--r--searchcore/src/tests/proton/attribute/attribute_initializer/attribute_initializer_test.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/searchcore/src/tests/proton/attribute/attribute_initializer/attribute_initializer_test.cpp b/searchcore/src/tests/proton/attribute/attribute_initializer/attribute_initializer_test.cpp
index 106bdf5cc98..52b7a7ce60a 100644
--- a/searchcore/src/tests/proton/attribute/attribute_initializer/attribute_initializer_test.cpp
+++ b/searchcore/src/tests/proton/attribute/attribute_initializer/attribute_initializer_test.cpp
@@ -95,7 +95,7 @@ struct Fixture
vespalib::ThreadStackExecutor _executor;
Fixture();
~Fixture();
- std::unique_ptr<AttributeInitializer> createInitializer(AttributeSpec && spec, SerialNum serialNum);
+ std::unique_ptr<AttributeInitializer> createInitializer(AttributeSpec && spec, std::optional<SerialNum> serialNum);
};
Fixture::Fixture()
@@ -109,7 +109,7 @@ Fixture::Fixture()
Fixture::~Fixture() = default;
std::unique_ptr<AttributeInitializer>
-Fixture::createInitializer(AttributeSpec &&spec, SerialNum serialNum)
+Fixture::createInitializer(AttributeSpec &&spec, std::optional<SerialNum> serialNum)
{
return std::make_unique<AttributeInitializer>(_diskLayout->createAttributeDir(spec.getName()), "test.subdb", std::move(spec), serialNum, _factory, _executor);
}
@@ -241,6 +241,15 @@ TEST("require that transient memory usage is reported for attribute load without
EXPECT_EQUAL(0u, avi->get_transient_memory_usage());
}
+TEST("require that saved attribute is ignored when serial num is not set")
+{
+ saveAttr("a", int32_sv, 10, 2);
+ Fixture f;
+ auto av = f.createInitializer({"a", int32_sv}, std::nullopt)->init().getAttribute();
+ EXPECT_EQUAL(0u, av->getCreateSerialNum());
+ EXPECT_EQUAL(1u, av->getNumDocs());
+}
+
}
TEST_MAIN()