From 97b364112f0c9f3378011d6567433923f9fd8328 Mon Sep 17 00:00:00 2001 From: Andreas Stöckel Date: Sat, 17 Jan 2015 15:27:09 +0100 Subject: Managed container does not reset owner on move -- this allows the container to be reusable after a move. Adapted unit test accordingly. --- test/core/managed/ManagedContainerTest.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'test') diff --git a/test/core/managed/ManagedContainerTest.cpp b/test/core/managed/ManagedContainerTest.cpp index 643ba2b..1ae14cb 100644 --- a/test/core/managed/ManagedContainerTest.cpp +++ b/test/core/managed/ManagedContainerTest.cpp @@ -106,7 +106,8 @@ TEST(ManagedVector, moveAssignment) } v1 = std::move(v2); - ASSERT_EQ(nullptr, v2.getOwner()); + ASSERT_EQ(root, v2.getOwner()); + ASSERT_TRUE(v2.empty()); } for (bool v : a) { ASSERT_TRUE(v); @@ -172,7 +173,8 @@ TEST(ManagedVector, copyWithNewOwner) ManagedVector v3{root, v2}; v1 = std::move(v3); - ASSERT_EQ(nullptr, v3.getOwner()); + ASSERT_EQ(root, v3.getOwner()); + ASSERT_TRUE(v3.empty()); ASSERT_TRUE(v1 != v2); } for (bool v : a) { @@ -207,8 +209,10 @@ TEST(ManagedVector, moveWithNewOwner) ManagedVector v3{root, std::move(v2)}; v1 = std::move(v3); - ASSERT_EQ(nullptr, v2.getOwner()); - ASSERT_EQ(nullptr, v3.getOwner()); + ASSERT_EQ(root2, v2.getOwner()); + ASSERT_TRUE(v2.empty()); + ASSERT_EQ(root, v3.getOwner()); + ASSERT_TRUE(v3.empty()); } for (bool v : a) { ASSERT_TRUE(v); -- cgit v1.2.3