Mercurial > hg > orthanc-databases
comparison Framework/Plugins/IndexUnitTests.h @ 256:e184dcadf163
handling of revisions in metadata
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 16 Apr 2021 17:13:33 +0200 |
parents | e9ba888f371b |
children | 34e2b93a7ac1 |
comparison
equal
deleted
inserted
replaced
255:d663d9e44f8d | 256:e184dcadf163 |
---|---|
268 ASSERT_EQ(2u, ci.size()); | 268 ASSERT_EQ(2u, ci.size()); |
269 ASSERT_TRUE(ci.front() == b || ci.front() == c); | 269 ASSERT_TRUE(ci.front() == b || ci.front() == c); |
270 ASSERT_TRUE(ci.back() == b || ci.back() == c); | 270 ASSERT_TRUE(ci.back() == b || ci.back() == c); |
271 ASSERT_NE(ci.front(), ci.back()); | 271 ASSERT_NE(ci.front(), ci.back()); |
272 | 272 |
273 db.SetMetadata(*manager, a, Orthanc::MetadataType_ModifiedFrom, "modified"); | 273 db.SetMetadata(*manager, a, Orthanc::MetadataType_ModifiedFrom, "modified", 42); |
274 db.SetMetadata(*manager, a, Orthanc::MetadataType_LastUpdate, "update2"); | 274 db.SetMetadata(*manager, a, Orthanc::MetadataType_LastUpdate, "update2", 43); |
275 ASSERT_FALSE(db.LookupMetadata(s, *manager, b, Orthanc::MetadataType_LastUpdate)); | 275 int64_t revision = -1; |
276 ASSERT_TRUE(db.LookupMetadata(s, *manager, a, Orthanc::MetadataType_LastUpdate)); | 276 ASSERT_FALSE(db.LookupMetadata(s, revision, *manager, b, Orthanc::MetadataType_LastUpdate)); |
277 ASSERT_TRUE(db.LookupMetadata(s, revision, *manager, a, Orthanc::MetadataType_LastUpdate)); | |
277 ASSERT_EQ("update2", s); | 278 ASSERT_EQ("update2", s); |
278 db.SetMetadata(*manager, a, Orthanc::MetadataType_LastUpdate, "update"); | 279 |
279 ASSERT_TRUE(db.LookupMetadata(s, *manager, a, Orthanc::MetadataType_LastUpdate)); | 280 #if ORTHANC_ENABLE_SQLITE == 1 |
281 ASSERT_EQ(43, revision); // Only SQLite implements revisions so far | |
282 #else | |
283 ASSERT_EQ(0, revision); | |
284 #endif | |
285 | |
286 db.SetMetadata(*manager, a, Orthanc::MetadataType_LastUpdate, "update", 44); | |
287 ASSERT_TRUE(db.LookupMetadata(s, revision, *manager, a, Orthanc::MetadataType_LastUpdate)); | |
280 ASSERT_EQ("update", s); | 288 ASSERT_EQ("update", s); |
289 | |
290 #if ORTHANC_ENABLE_SQLITE == 1 | |
291 ASSERT_EQ(44, revision); // Only SQLite implements revisions so far | |
292 #else | |
293 ASSERT_EQ(0, revision); | |
294 #endif | |
281 | 295 |
282 std::list<int32_t> md; | 296 std::list<int32_t> md; |
283 db.ListAvailableMetadata(md, *manager, a); | 297 db.ListAvailableMetadata(md, *manager, a); |
284 ASSERT_EQ(2u, md.size()); | 298 ASSERT_EQ(2u, md.size()); |
285 ASSERT_TRUE(md.front() == Orthanc::MetadataType_ModifiedFrom || md.back() == Orthanc::MetadataType_ModifiedFrom); | 299 ASSERT_TRUE(md.front() == Orthanc::MetadataType_ModifiedFrom || md.back() == Orthanc::MetadataType_ModifiedFrom); |
286 ASSERT_TRUE(md.front() == Orthanc::MetadataType_LastUpdate || md.back() == Orthanc::MetadataType_LastUpdate); | 300 ASSERT_TRUE(md.front() == Orthanc::MetadataType_LastUpdate || md.back() == Orthanc::MetadataType_LastUpdate); |
287 std::string mdd; | 301 std::string mdd; |
288 ASSERT_TRUE(db.LookupMetadata(mdd, *manager, a, Orthanc::MetadataType_ModifiedFrom)); | 302 ASSERT_TRUE(db.LookupMetadata(mdd, revision, *manager, a, Orthanc::MetadataType_ModifiedFrom)); |
289 ASSERT_EQ("modified", mdd); | 303 ASSERT_EQ("modified", mdd); |
290 ASSERT_TRUE(db.LookupMetadata(mdd, *manager, a, Orthanc::MetadataType_LastUpdate)); | 304 |
305 #if ORTHANC_ENABLE_SQLITE == 1 | |
306 ASSERT_EQ(42, revision); // Only SQLite implements revisions so far | |
307 #else | |
308 ASSERT_EQ(0, revision); | |
309 #endif | |
310 | |
311 ASSERT_TRUE(db.LookupMetadata(mdd, revision, *manager, a, Orthanc::MetadataType_LastUpdate)); | |
291 ASSERT_EQ("update", mdd); | 312 ASSERT_EQ("update", mdd); |
313 | |
314 #if ORTHANC_ENABLE_SQLITE == 1 | |
315 ASSERT_EQ(44, revision); // Only SQLite implements revisions so far | |
316 #else | |
317 ASSERT_EQ(0, revision); | |
318 #endif | |
292 | 319 |
293 db.ListAvailableMetadata(md, *manager, b); | 320 db.ListAvailableMetadata(md, *manager, b); |
294 ASSERT_EQ(0u, md.size()); | 321 ASSERT_EQ(0u, md.size()); |
295 | 322 |
323 ASSERT_TRUE(db.LookupMetadata(s, revision, *manager, a, Orthanc::MetadataType_LastUpdate)); | |
296 db.DeleteMetadata(*manager, a, Orthanc::MetadataType_LastUpdate); | 324 db.DeleteMetadata(*manager, a, Orthanc::MetadataType_LastUpdate); |
325 ASSERT_FALSE(db.LookupMetadata(s, revision, *manager, a, Orthanc::MetadataType_LastUpdate)); | |
297 db.DeleteMetadata(*manager, b, Orthanc::MetadataType_LastUpdate); | 326 db.DeleteMetadata(*manager, b, Orthanc::MetadataType_LastUpdate); |
298 ASSERT_FALSE(db.LookupMetadata(s, *manager, a, Orthanc::MetadataType_LastUpdate)); | 327 ASSERT_FALSE(db.LookupMetadata(s, revision, *manager, a, Orthanc::MetadataType_LastUpdate)); |
299 | 328 |
300 db.ListAvailableMetadata(md, *manager, a); | 329 db.ListAvailableMetadata(md, *manager, a); |
301 ASSERT_EQ(1u, md.size()); | 330 ASSERT_EQ(1u, md.size()); |
302 ASSERT_EQ(Orthanc::MetadataType_ModifiedFrom, md.front()); | 331 ASSERT_EQ(Orthanc::MetadataType_ModifiedFrom, md.front()); |
303 | 332 |