diff options
author | Andreas Stöckel <astoecke@techfak.uni-bielefeld.de> | 2014-12-15 18:45:01 +0100 |
---|---|---|
committer | Andreas Stöckel <astoecke@techfak.uni-bielefeld.de> | 2014-12-15 18:45:01 +0100 |
commit | 84cbdcaba520f89eb3ddbdaf1fe2ab3db412501a (patch) | |
tree | ca3df3c791834e65479c6b9a8720f8e55150a396 /test/core/managed/ManagedTest.cpp | |
parent | c5d18a42da8e9ed19c9520308fef087f4fb76323 (diff) |
Improved ManagedContainer classes
Diffstat (limited to 'test/core/managed/ManagedTest.cpp')
-rw-r--r-- | test/core/managed/ManagedTest.cpp | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/test/core/managed/ManagedTest.cpp b/test/core/managed/ManagedTest.cpp index e8a24f2..707aeb9 100644 --- a/test/core/managed/ManagedTest.cpp +++ b/test/core/managed/ManagedTest.cpp @@ -16,7 +16,35 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ +#include <gtest/gtest.h> + +#include <core/managed/Managed.hpp> + +#include "TestManaged.hpp" + namespace ousia { +TEST(Managed, data) +{ + Manager mgr{1}; + + Rooted<Managed> n{new Managed{mgr}}; + + Managed *m1 = new Managed{mgr}; + n->storeData("info", m1); + ASSERT_TRUE(n->hasDataKey("info")); + ASSERT_FALSE(n->hasDataKey("test")); + + Managed *m2 = new Managed{mgr}; + n->storeData("test", m2); + ASSERT_TRUE(n->hasDataKey("info")); + ASSERT_TRUE(n->hasDataKey("test")); + + ASSERT_TRUE(n->deleteData("info")); + ASSERT_FALSE(n->deleteData("info")); + ASSERT_FALSE(n->hasDataKey("info")); + ASSERT_TRUE(n->hasDataKey("test")); +} + } |