Helper collection class that functions as list of unique pointers.
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
42
tests/UniquePtrListTests.cpp
Normal file
42
tests/UniquePtrListTests.cpp
Normal file
@@ -0,0 +1,42 @@
|
||||
#ifdef TESTS_BUILD
|
||||
#include "../extern/catch.hpp"
|
||||
#include "../src/Memory/UniquePtrList.hpp"
|
||||
using namespace ArbUt;
|
||||
|
||||
TEST_CASE("Create Unique Ptr list, append"){
|
||||
auto ls = UniquePtrList<uint32_t>();
|
||||
auto v1 = new uint32_t (100);
|
||||
auto v2 = new uint32_t (5000);
|
||||
ls.Append(v1);
|
||||
ls.Append(v2);
|
||||
}
|
||||
|
||||
TEST_CASE("Create Unique Ptr list, append, retrieve"){
|
||||
auto ls = UniquePtrList<uint32_t>();
|
||||
auto v1 = new uint32_t (100);
|
||||
auto v2 = new uint32_t (5000);
|
||||
ls.Append(v1);
|
||||
ls.Append(v2);
|
||||
REQUIRE(ls.Count() == 2);
|
||||
CHECK(ls.At(0) == v1);
|
||||
CHECK(ls.At(1) == v2);
|
||||
CHECK(ls[0] == v1);
|
||||
CHECK(ls[1] == v2);
|
||||
}
|
||||
|
||||
TEST_CASE("Create Unique Ptr list, append, iterate"){
|
||||
auto ls = UniquePtrList<uint32_t>();
|
||||
auto v1 = new uint32_t (100);
|
||||
auto v2 = new uint32_t (5000);
|
||||
ls.Append(v1);
|
||||
ls.Append(v2);
|
||||
REQUIRE(ls.Count() == 2);
|
||||
auto i = 0;
|
||||
for (const auto& v : ls){
|
||||
if (i == 0) CHECK(v == v1);
|
||||
else if (i == 1) CHECK(v == v2);
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user