28 static struct OwnedArrayTest :
public UnitTest
30 OwnedArrayTest() : UnitTest {
"OwnedArray" } {}
34 virtual ~Base() =
default;
41 void runTest()
override
43 beginTest (
"After converting move construction, ownership is transferred");
45 OwnedArray<Derived> derived {
new Derived{},
new Derived{},
new Derived{} };
47 OwnedArray<Base> base { std::move (derived) };
49 expectEquals (base.size(), 3);
50 expectEquals (derived.size(), 0);
53 beginTest (
"After converting move assignment, ownership is transferred");
55 OwnedArray<Base> base;
57 base = OwnedArray<Derived> {
new Derived{},
new Derived{},
new Derived{} };
59 expectEquals (base.size(), 3);