diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2020-10-21 20:36:24 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2020-10-21 20:36:24 +0000 |
commit | 7e2a2a5772f4b3523c9c7301771791fa767cb33f (patch) | |
tree | 61b4603c9f9818cf9da51af6b04d29fedc719d87 /storage | |
parent | 061f32baaa4e5800ce94052c671bdbd155c455f8 (diff) |
Test that new repo is reflected in cached value in PersistenceUtil.
Diffstat (limited to 'storage')
-rw-r--r-- | storage/src/tests/persistence/processalltest.cpp | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/storage/src/tests/persistence/processalltest.cpp b/storage/src/tests/persistence/processalltest.cpp index 24c67fe93c1..a19abbfb1c6 100644 --- a/storage/src/tests/persistence/processalltest.cpp +++ b/storage/src/tests/persistence/processalltest.cpp @@ -3,9 +3,9 @@ #include <vespa/document/base/testdocman.h> #include <vespa/storage/persistence/processallhandler.h> #include <vespa/storage/persistence/messages.h> -#include <vespa/documentapi/loadtypes/loadtype.h> #include <tests/persistence/persistencetestutils.h> #include <vespa/document/test/make_document_bucket.h> +#include <vespa/document/repo/documenttyperepo.h> using document::test::makeDocumentBucket; using namespace ::testing; @@ -15,6 +15,20 @@ namespace storage { class ProcessAllHandlerTest : public SingleDiskPersistenceTestUtils { }; +TEST_F(ProcessAllHandlerTest, change_of_repos_is_reflected) { + EXPECT_EQ(3u, getComponent().getGeneration()); + auto old = getComponent().getTypeRepo()->documentTypeRepo; + auto old2 = &getEnv().getDocumentTypeRepo(); + EXPECT_EQ(old.get(), old2); + + auto newDocRepo = std::make_shared<document::DocumentTypeRepo>(*old->getDocumentType("testdoctype1")); + getComponent().setDocumentTypeRepo(newDocRepo); + + EXPECT_EQ(4u, getComponent().getGeneration()); + EXPECT_EQ(newDocRepo.get(), getComponent().getTypeRepo()->documentTypeRepo.get()); + EXPECT_EQ(newDocRepo.get(), &getEnv().getDocumentTypeRepo()); +} + TEST_F(ProcessAllHandlerTest, remove_location) { document::BucketId bucketId(16, 4); doPut(4, spi::Timestamp(1234)); |