From 383056076991658dfff421cf6c0e62a8215135b4 Mon Sep 17 00:00:00 2001
From: Steven Murray <Steven.Murray@cern.ch>
Date: Tue, 12 Feb 2019 11:57:16 +0100
Subject: [PATCH] CatalogueTest now asserts new archive file identifiers are
 unique as opposed to strictly incrementing sequentially by 1

---
 catalogue/CatalogueTest.cpp | 33 ++++++++++++---------------------
 1 file changed, 12 insertions(+), 21 deletions(-)

diff --git a/catalogue/CatalogueTest.cpp b/catalogue/CatalogueTest.cpp
index 052b08f32a..e60775a4d7 100644
--- a/catalogue/CatalogueTest.cpp
+++ b/catalogue/CatalogueTest.cpp
@@ -5811,17 +5811,14 @@ TEST_P(cta_catalogue_CatalogueTest, checkAndGetNextArchiveFileId_requester_mount
   common::dataStructures::UserIdentity userIdentity;
   userIdentity.name = requesterName;
   userIdentity.group = "group";
-  uint64_t expectedArchiveFileId = 0;
+
+  std::set<uint64_t> archiveFileIds;
   for(uint64_t i = 0; i<10; i++) {
     const uint64_t archiveFileId =
       m_catalogue->checkAndGetNextArchiveFileId(storageClass.diskInstance, storageClass.name, userIdentity);
 
-    if(0 == i) {
-      expectedArchiveFileId = archiveFileId;
-    } else {
-      expectedArchiveFileId++;
-    }
-    ASSERT_EQ(expectedArchiveFileId, archiveFileId);
+    const bool archiveFileIdIsNew = archiveFileIds.end() == archiveFileIds.find(archiveFileId);
+    ASSERT_TRUE(archiveFileIdIsNew);
   }
 }
 
@@ -5904,17 +5901,14 @@ TEST_P(cta_catalogue_CatalogueTest, checkAndGetNextArchiveFileId_requester_group
   common::dataStructures::UserIdentity userIdentity;
   userIdentity.name = "username";
   userIdentity.group = requesterGroupName;
-  uint64_t expectedArchiveFileId = 0;
+
+  std::set<uint64_t> archiveFileIds;
   for(uint64_t i = 0; i<10; i++) {
     const uint64_t archiveFileId =
       m_catalogue->checkAndGetNextArchiveFileId(storageClass.diskInstance, storageClass.name, userIdentity);
 
-    if(0 == i) {
-      expectedArchiveFileId = archiveFileId;
-    } else {
-      expectedArchiveFileId++;
-    }
-    ASSERT_EQ(expectedArchiveFileId, archiveFileId);
+    const bool archiveFileIdIsNew = archiveFileIds.end() == archiveFileIds.find(archiveFileId);
+    ASSERT_TRUE(archiveFileIdIsNew);
   }
 }
 
@@ -6016,17 +6010,14 @@ TEST_P(cta_catalogue_CatalogueTest, checkAndGetNextArchiveFileId_requester_mount
   common::dataStructures::UserIdentity userIdentity;
   userIdentity.name = requesterName;
   userIdentity.group = "group";
-  uint64_t expectedArchiveFileId = 0;
+
+  std::set<uint64_t> archiveFileIds;
   for(uint64_t i = 0; i<10; i++) {
     const uint64_t archiveFileId =
       m_catalogue->checkAndGetNextArchiveFileId(storageClass.diskInstance, storageClass.name, userIdentity);
 
-    if(0 == i) {
-      expectedArchiveFileId = archiveFileId;
-    } else {
-      expectedArchiveFileId++;
-    }
-    ASSERT_EQ(expectedArchiveFileId, archiveFileId);
+    const bool archiveFileIdIsNew = archiveFileIds.end() == archiveFileIds.find(archiveFileId);
+    ASSERT_TRUE(archiveFileIdIsNew);
   }
 }
 
-- 
GitLab