summaryrefslogtreecommitdiffstats
path: root/test/src/object-test.cpp
diff options
context:
space:
mode:
authorAdrian Boguszewski <adrbogus1@student.pg.gda.pl>2016-06-05 21:20:55 +0000
committerAdrian Boguszewski <adrbogus1@student.pg.gda.pl>2016-06-05 21:20:55 +0000
commit9abb5e658d005b3ac82afeec13fd59384a8e65eb (patch)
treea6bdcceacd73ff829dd54d891ac7dc3cf70273ee /test/src/object-test.cpp
parent[Bug #1545333] Convenience option (default: ON) for cmake builds to enable SV... (diff)
downloadinkscape-9abb5e658d005b3ac82afeec13fd59384a8e65eb.tar.gz
inkscape-9abb5e658d005b3ac82afeec13fd59384a8e65eb.zip
Added object set
(bzr r14954.1.1)
Diffstat (limited to 'test/src/object-test.cpp')
-rw-r--r--test/src/object-test.cpp56
1 files changed, 56 insertions, 0 deletions
diff --git a/test/src/object-test.cpp b/test/src/object-test.cpp
new file mode 100644
index 000000000..83e90b2ec
--- /dev/null
+++ b/test/src/object-test.cpp
@@ -0,0 +1,56 @@
+#include "gtest/gtest.h"
+#include "object.h"
+
+class ObjectTest: public testing::Test {
+public:
+ ObjectTest() {
+ object = new Object("parent");
+ childOfChild = new Object("childOfChild");
+ child = new Object("child");
+ child2 = new Object("child2");
+ object2 = new Object("object2");
+ child3 = new Object("child3");
+ }
+ ~ObjectTest() {
+ delete child3;
+ delete child2;
+ delete childOfChild;
+ delete child;
+ delete object2;
+ delete object;
+ }
+ Object* object;
+ Object* object2;
+ Object* child;
+ Object* childOfChild;
+ Object* child2;
+ Object* child3;
+};
+
+TEST_F(ObjectTest, AddChild) {
+ EXPECT_EQ(0, object->getChildren().size());
+ object->addChild(child);
+ EXPECT_EQ(1, object->getChildren().size());
+ EXPECT_EQ(child, &(object->getChildren().front()));
+ EXPECT_EQ(object, child->getParent());
+}
+
+TEST_F(ObjectTest, IsDescendantOf) {
+ object->addChild(child);
+ child->addChild(childOfChild);
+ object->addChild(child2);
+ object2->addChild(child3);
+ EXPECT_TRUE(child->isDescendantOf(object));
+ EXPECT_TRUE(childOfChild->isDescendantOf(child));
+ EXPECT_TRUE(childOfChild->isDescendantOf(object));
+ EXPECT_TRUE(child2->isDescendantOf(object));
+ EXPECT_TRUE(child3->isDescendantOf(object2));
+ EXPECT_FALSE(child->isDescendantOf(child2));
+ EXPECT_FALSE(child2->isDescendantOf(child));
+ EXPECT_FALSE(object->isDescendantOf(childOfChild));
+ EXPECT_FALSE(object->isDescendantOf(child));
+ EXPECT_FALSE(object->isDescendantOf(object2));
+ EXPECT_FALSE(object2->isDescendantOf(object));
+ EXPECT_FALSE(child2->isDescendantOf(child3));
+ EXPECT_FALSE(child3->isDescendantOf(child2));
+}