Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Oct 4, 2015, 9:12:21 PM (9 years ago)
Author:
landauf
Message:

merged branch core7 back to trunk

Location:
code/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • code/trunk

  • code/trunk/test/core/class/IdentifierSimpleClassHierarchyTest.cc

    r9659 r10624  
    44#include "core/class/OrxonoxClass.h"
    55#include "core/class/OrxonoxInterface.h"
     6#include "core/module/ModuleInstance.h"
    67
    78namespace orxonox
     
    910    namespace
    1011    {
    11         class Interface : public OrxonoxInterface
     12        class Interface : virtual public OrxonoxInterface
    1213        {
    1314            public:
     
    4041        };
    4142
     43        RegisterAbstractClass(Interface).inheritsFrom<OrxonoxInterface>();
     44        RegisterClassNoArgs(BaseClass);
     45        RegisterClassNoArgs(RealClass);
     46
    4247        // Fixture
    4348        class IdentifierSimpleClassHierarchyTest : public ::testing::Test
     
    4651                virtual void SetUp()
    4752                {
    48                     registerClass("Context", new ClassFactoryWithContext<Context>());
    49                     registerClass("Listable", new ClassFactoryWithContext<Listable>());
    50                     registerClass("Configurable", new ClassFactoryNoArgs<Configurable>());
    51                     registerClass("OrxonoxInterface", new ClassFactoryNoArgs<OrxonoxInterface>());
    52                     registerClass("OrxonoxClass", new ClassFactoryNoArgs<OrxonoxClass>());
    53                     registerClass("Interface", static_cast<ClassFactory<Interface>*>(NULL), false).inheritsFrom(Class(OrxonoxInterface));
    54                     registerClass("BaseClass", new ClassFactoryNoArgs<BaseClass>());
    55                     registerClass("RealClass", new ClassFactoryNoArgs<RealClass>());
    56 
     53                    new IdentifierManager();
     54                    ModuleInstance::getCurrentModuleInstance()->loadAllStaticallyInitializedInstances(StaticInitialization::IDENTIFIER);
     55                    Context::setRootContext(new Context(NULL));
     56                    Identifier::initConfigValues_s = false; // TODO: hack!
    5757                    IdentifierManager::getInstance().createClassHierarchy();
    5858                }
     
    6060                virtual void TearDown()
    6161                {
    62                     IdentifierManager::getInstance().destroyAllIdentifiers();
     62                    IdentifierManager::getInstance().destroyClassHierarchy();
     63                    Context::destroyRootContext();
     64                    ModuleInstance::getCurrentModuleInstance()->unloadAllStaticallyInitializedInstances(StaticInitialization::IDENTIFIER);
     65                    delete &IdentifierManager::getInstance();
    6366                }
    6467        };
     68
     69        bool contains(const std::list<const Identifier*> identifiers, Identifier* identifier)
     70        {
     71            return std::find(identifiers.begin(), identifiers.end(), identifier) != identifiers.end();
     72        }
    6573
    6674        bool contains(const std::set<const Identifier*> identifiers, Identifier* identifier)
    6775        {
    6876            return identifiers.find(identifier) != identifiers.end();
    69         }
    70     }
    71 
    72     TEST(IdentifierSimpleClassHierarchyTest_NoFixture, NoInitialization)
    73     {
    74         {
    75             Identifier* identifier = Class(Interface);
    76             EXPECT_EQ(0u, identifier->getChildren().size());
    77             EXPECT_EQ(0u, identifier->getParents().size());
    78         }
    79         {
    80             Identifier* identifier = Class(BaseClass);
    81             EXPECT_EQ(0u, identifier->getChildren().size());
    82             EXPECT_EQ(0u, identifier->getParents().size());
    83         }
    84         {
    85             Identifier* identifier = Class(RealClass);
    86             EXPECT_EQ(0u, identifier->getChildren().size());
    87             EXPECT_EQ(0u, identifier->getParents().size());
    8877        }
    8978    }
Note: See TracChangeset for help on using the changeset viewer.