Enable extended compiler warnings and resolve occurring ones
This commit is contained in:
parent
535bfc1634
commit
e8a48afd3b
@ -8,6 +8,7 @@ ADD_BOOST(filesystem system thread)
|
||||
TARGET_LINK_LIBRARIES(${BII_BLOCK_TARGET} INTERFACE rt)
|
||||
|
||||
ACTIVATE_CPP14()
|
||||
ENABLE_STYLE_WARNINGS()
|
||||
|
||||
# You can safely delete lines from here...
|
||||
|
||||
|
@ -23,6 +23,7 @@ public:
|
||||
TEST_F(CacheTest_MoveConstructor, MoveIntoCache) {
|
||||
cache->push(MinimalKeyType::create(0), CopyableMovableValueType(2));
|
||||
CopyableMovableValueType val = cache->pop(MinimalKeyType::create(0)).value();
|
||||
val.value(); //Access it to avoid the compiler optimizing the assignment away
|
||||
EXPECT_EQ(0, CopyableMovableValueType::numCopyConstructorCalled);
|
||||
}
|
||||
|
||||
@ -30,5 +31,6 @@ TEST_F(CacheTest_MoveConstructor, CopyIntoCache) {
|
||||
CopyableMovableValueType value(2);
|
||||
cache->push(MinimalKeyType::create(0), value);
|
||||
CopyableMovableValueType val = cache->pop(MinimalKeyType::create(0)).value();
|
||||
val.value(); //Access it to avoid the compiler optimizing the assignment away
|
||||
EXPECT_EQ(1, CopyableMovableValueType::numCopyConstructorCalled);
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ TEST_F(CacheTest_PushAndPop, PopNonExistingEntry_NonEmptyCache) {
|
||||
|
||||
TEST_F(CacheTest_PushAndPop, PopNonExistingEntry_FullCache) {
|
||||
//Add a lot of even numbered keys
|
||||
for (int i = 0; i < Cache::MAX_ENTRIES; ++i) {
|
||||
for (unsigned int i = 0; i < Cache::MAX_ENTRIES; ++i) {
|
||||
push(2*i, 2*i);
|
||||
}
|
||||
//Request an odd numbered key
|
||||
@ -43,34 +43,34 @@ TEST_F(CacheTest_PushAndPop, MultipleEntries) {
|
||||
}
|
||||
|
||||
TEST_F(CacheTest_PushAndPop, FullCache) {
|
||||
for(int i = 0; i < Cache::MAX_ENTRIES; ++i) {
|
||||
for(unsigned int i = 0; i < Cache::MAX_ENTRIES; ++i) {
|
||||
push(i, 2*i);
|
||||
}
|
||||
for(int i = 0; i < Cache::MAX_ENTRIES; ++i) {
|
||||
for(unsigned int i = 0; i < Cache::MAX_ENTRIES; ++i) {
|
||||
EXPECT_EQ(2*i, pop(i).value());
|
||||
}
|
||||
}
|
||||
|
||||
TEST_F(CacheTest_PushAndPop, FullCache_PushNonOrdered_PopOrdered) {
|
||||
for(int i = 1; i < Cache::MAX_ENTRIES; i += 2) {
|
||||
for(unsigned int i = 1; i < Cache::MAX_ENTRIES; i += 2) {
|
||||
push(i, 2*i);
|
||||
}
|
||||
for(int i = 0; i < Cache::MAX_ENTRIES; i += 2) {
|
||||
for(unsigned int i = 0; i < Cache::MAX_ENTRIES; i += 2) {
|
||||
push(i, 2*i);
|
||||
}
|
||||
for(int i = 0; i < Cache::MAX_ENTRIES; ++i) {
|
||||
for(unsigned int i = 0; i < Cache::MAX_ENTRIES; ++i) {
|
||||
EXPECT_EQ(2*i, pop(i).value());
|
||||
}
|
||||
}
|
||||
|
||||
TEST_F(CacheTest_PushAndPop, FullCache_PushOrdered_PopNonOrdered) {
|
||||
for(int i = 0; i < Cache::MAX_ENTRIES; ++i) {
|
||||
for(unsigned int i = 0; i < Cache::MAX_ENTRIES; ++i) {
|
||||
push(i, 2*i);
|
||||
}
|
||||
for(int i = 1; i < Cache::MAX_ENTRIES; i += 2) {
|
||||
for(unsigned int i = 1; i < Cache::MAX_ENTRIES; i += 2) {
|
||||
EXPECT_EQ(2*i, pop(i).value());
|
||||
}
|
||||
for(int i = 0; i < Cache::MAX_ENTRIES; i += 2) {
|
||||
for(unsigned int i = 0; i < Cache::MAX_ENTRIES; i += 2) {
|
||||
EXPECT_EQ(2*i, pop(i).value());
|
||||
}
|
||||
}
|
||||
@ -95,26 +95,26 @@ TEST_F(CacheTest_PushAndPop, FullCache_PushNonOrdered_PopNonOrdered) {
|
||||
for(int i = roundDownToEven(Cache::MAX_ENTRIES - 1); i >= 0; i -= 2) {
|
||||
push(i, 2*i);
|
||||
}
|
||||
for(int i = 1; i < Cache::MAX_ENTRIES; i += 2) {
|
||||
for(unsigned int i = 1; i < Cache::MAX_ENTRIES; i += 2) {
|
||||
push(i, 2*i);
|
||||
}
|
||||
for(int i = roundDownToOdd(Cache::MAX_ENTRIES-1); i >= 0; i -= 2) {
|
||||
EXPECT_EQ(2*i, pop(i).value());
|
||||
}
|
||||
for(int i = 0; i < Cache::MAX_ENTRIES; i += 2) {
|
||||
for(unsigned int i = 0; i < Cache::MAX_ENTRIES; i += 2) {
|
||||
EXPECT_EQ(2*i, pop(i).value());
|
||||
}
|
||||
}
|
||||
|
||||
TEST_F(CacheTest_PushAndPop, MoreThanFullCache) {
|
||||
for(int i = 0; i < Cache::MAX_ENTRIES + 2; ++i) {
|
||||
for(unsigned int i = 0; i < Cache::MAX_ENTRIES + 2; ++i) {
|
||||
push(i, 2*i);
|
||||
}
|
||||
//Check that the oldest two elements got deleted automatically
|
||||
EXPECT_EQ(boost::none, pop(0));
|
||||
EXPECT_EQ(boost::none, pop(1));
|
||||
//Check the other elements are still there
|
||||
for(int i = 2; i < Cache::MAX_ENTRIES + 2; ++i) {
|
||||
for(unsigned int i = 2; i < Cache::MAX_ENTRIES + 2; ++i) {
|
||||
EXPECT_EQ(2*i, pop(i).value());
|
||||
}
|
||||
}
|
||||
|
@ -23,12 +23,14 @@ public:
|
||||
TEST_F(QueueMapTest_MoveConstructor, PushingAndPopping_MoveIntoMap) {
|
||||
map->push(MinimalKeyType::create(0), CopyableMovableValueType(2));
|
||||
CopyableMovableValueType val = map->pop().value();
|
||||
val.value(); //Access it to avoid the compiler optimizing the assignment away
|
||||
EXPECT_EQ(0, CopyableMovableValueType::numCopyConstructorCalled);
|
||||
}
|
||||
|
||||
TEST_F(QueueMapTest_MoveConstructor, PushingAndPoppingPerKey_MoveIntoMap) {
|
||||
map->push(MinimalKeyType::create(0), CopyableMovableValueType(2));
|
||||
CopyableMovableValueType val = map->pop(MinimalKeyType::create(0)).value();
|
||||
val.value(); //Access it to avoid the compiler optimizing the assignment away
|
||||
EXPECT_EQ(0, CopyableMovableValueType::numCopyConstructorCalled);
|
||||
}
|
||||
|
||||
@ -36,6 +38,7 @@ TEST_F(QueueMapTest_MoveConstructor, PushingAndPopping_CopyIntoMap) {
|
||||
CopyableMovableValueType value(2);
|
||||
map->push(MinimalKeyType::create(0), value);
|
||||
CopyableMovableValueType val = map->pop().value();
|
||||
val.value(); //Access it to avoid the compiler optimizing the assignment away
|
||||
EXPECT_EQ(1, CopyableMovableValueType::numCopyConstructorCalled);
|
||||
}
|
||||
|
||||
@ -43,5 +46,6 @@ TEST_F(QueueMapTest_MoveConstructor, PushingAndPoppingPerKey_CopyIntoMap) {
|
||||
CopyableMovableValueType value(2);
|
||||
map->push(MinimalKeyType::create(0), value);
|
||||
CopyableMovableValueType val = map->pop(MinimalKeyType::create(0)).value();
|
||||
val.value(); //Access it to avoid the compiler optimizing the assignment away
|
||||
EXPECT_EQ(1, CopyableMovableValueType::numCopyConstructorCalled);
|
||||
}
|
||||
|
@ -93,7 +93,7 @@ private:
|
||||
}
|
||||
|
||||
static void _caesar(byte *dst, const byte *src, unsigned int size, uint8_t key) {
|
||||
for (int i = 0; i < size; ++i) {
|
||||
for (unsigned int i = 0; i < size; ++i) {
|
||||
dst[i] = src[i] + key;
|
||||
}
|
||||
}
|
||||
|
@ -28,7 +28,7 @@ public:
|
||||
return unique_ptr<Block>(do_load(key));
|
||||
}
|
||||
MOCK_METHOD1(do_load, Block*(const Key &));
|
||||
void remove(unique_ptr<Block> block) {}
|
||||
void remove(unique_ptr<Block> block) {UNUSED(block);}
|
||||
MOCK_CONST_METHOD0(numBlocks, uint64_t());
|
||||
};
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user