[Orxonox-commit 4979] r9648 - code/branches/core6/test/core/class

landauf at orxonox.net landauf at orxonox.net
Wed Aug 14 17:44:54 CEST 2013


Author: landauf
Date: 2013-08-14 17:44:53 +0200 (Wed, 14 Aug 2013)
New Revision: 9648

Modified:
   code/branches/core6/test/core/class/SuperTest.cc
Log:
fixed test and added new test

Modified: code/branches/core6/test/core/class/SuperTest.cc
===================================================================
--- code/branches/core6/test/core/class/SuperTest.cc	2013-08-14 08:39:32 UTC (rev 9647)
+++ code/branches/core6/test/core/class/SuperTest.cc	2013-08-14 15:44:53 UTC (rev 9648)
@@ -67,6 +67,8 @@
             public:
                 virtual void SetUp()
                 {
+                    IdentifierManager::getInstance().destroyAllIdentifiers();
+
                     registerClass("OrxonoxClass", new ClassFactoryNoArgs<OrxonoxClass>());
                     registerClass("BaseObject", new ClassFactoryWithContext<BaseObject>());
                     registerClass("TestClass", new ClassFactoryWithContext<TestClass>());
@@ -82,6 +84,27 @@
         };
     }
 
+    TEST_F(SuperTest, ClassHierarchyIsCorrect)
+    {
+        {
+            Identifier* identifier = Class(TestSubclass);
+
+            EXPECT_EQ(0u, identifier->getDirectChildren().size());
+
+            EXPECT_EQ(1u, identifier->getDirectParents().size());
+            EXPECT_TRUE(identifier->getDirectParents().find(Class(TestClass)) != identifier->getDirectParents().end());
+        }
+        {
+            Identifier* identifier = Class(TestClass);
+
+            EXPECT_EQ(1u, identifier->getDirectChildren().size());
+            EXPECT_TRUE(identifier->getDirectChildren().find(Class(TestSubclass)) != identifier->getDirectChildren().end());
+
+            EXPECT_EQ(1u, identifier->getDirectParents().size());
+            EXPECT_TRUE(identifier->getDirectParents().find(Class(BaseObject)) != identifier->getDirectParents().end());
+        }
+    }
+
     TEST_F(SuperTest, SuperCallWithoutArguments)
     {
         TestSubclass test;




More information about the Orxonox-commit mailing list