source:
code/branches/core7/test/core/class/IdentifiableTest.cc
@
10985
Last change on this file since 10985 was 10544, checked in by landauf, 9 years ago | |
---|---|
|
|
File size: 1.5 KB |
Rev | Line | |
---|---|---|
[9601] | 1 | #include <gtest/gtest.h> |
2 | #include "core/CoreIncludes.h" | |
3 | #include "core/class/Identifiable.h" | |
[10533] | 4 | #include "core/module/ModuleInstance.h" |
[9601] | 5 | |
6 | namespace orxonox | |
7 | { | |
8 | namespace | |
9 | { | |
[10533] | 10 | class IdentifiableClass : public Identifiable |
[9601] | 11 | { |
12 | public: | |
[10533] | 13 | IdentifiableClass() { RegisterObject(IdentifiableClass); } |
[9601] | 14 | }; |
[10400] | 15 | |
[10533] | 16 | RegisterClassNoArgs(IdentifiableClass); |
17 | ||
18 | // Fixture | |
19 | class IdentifiableTest : public ::testing::Test | |
20 | { | |
21 | public: | |
22 | virtual void SetUp() | |
23 | { | |
[10544] | 24 | new IdentifierManager(); |
[10535] | 25 | ModuleInstance::getCurrentModuleInstance()->loadAllStaticallyInitializedInstances(StaticInitialization::IDENTIFIER); |
[10533] | 26 | } |
27 | ||
28 | virtual void TearDown() | |
29 | { | |
[10535] | 30 | ModuleInstance::getCurrentModuleInstance()->unloadAllStaticallyInitializedInstances(StaticInitialization::IDENTIFIER); |
[10544] | 31 | delete &IdentifierManager::getInstance(); |
[10533] | 32 | } |
33 | }; | |
[9601] | 34 | } |
35 | ||
[10533] | 36 | TEST_F(IdentifiableTest, CanCreate) |
[9601] | 37 | { |
[10533] | 38 | IdentifiableClass* test = new IdentifiableClass(); |
[9601] | 39 | ASSERT_TRUE(test != NULL); |
40 | delete test; | |
41 | } | |
42 | ||
[10533] | 43 | TEST_F(IdentifiableTest, HasIdentifierAssigned) |
[9601] | 44 | { |
[10533] | 45 | IdentifiableClass test; |
[9601] | 46 | EXPECT_TRUE(test.getIdentifier()); |
47 | } | |
48 | ||
[10533] | 49 | TEST_F(IdentifiableTest, CanBeIdentified) |
[9601] | 50 | { |
[10533] | 51 | IdentifiableClass test; |
52 | EXPECT_TRUE(test.isA(Class(IdentifiableClass))); | |
[9601] | 53 | } |
54 | } |
Note: See TracBrowser
for help on using the repository browser.