19 #include <QDomDocument>
20 #include <QDomElement>
21 #include <QTemporaryDir>
23 #include "layerbitmap.h"
24 #include "layervector.h"
25 #include "layersound.h"
28 TEST_CASE(
"Object::addXXXLayer()")
32 SECTION(
"Init an Object")
35 REQUIRE(obj->getLayerCount() == 0);
36 REQUIRE(obj->getColorCount() > 0);
39 SECTION(
"Add a bitmap layer")
41 REQUIRE(obj->getLayerCount() == 0);
42 obj->addNewBitmapLayer();
43 REQUIRE(obj->getLayerCount() == 1);
45 REQUIRE(obj->getLayer(0)->type() == Layer::BITMAP);
48 SECTION(
"Add a vector layer")
50 REQUIRE(obj->getLayerCount() == 0);
51 obj->addNewVectorLayer();
52 REQUIRE(obj->getLayerCount() == 1);
54 REQUIRE(obj->getLayer(0)->type() == Layer::VECTOR);
57 SECTION(
"Add a camera layer")
59 REQUIRE(obj->getLayerCount() == 0);
60 obj->addNewCameraLayer();
61 REQUIRE(obj->getLayerCount() == 1);
63 REQUIRE(obj->getLayer(0)->type() == Layer::CAMERA);
66 SECTION(
"Add a sound layer")
68 REQUIRE(obj->getLayerCount() == 0);
69 obj->addNewSoundLayer();
70 REQUIRE(obj->getLayerCount() == 1);
71 REQUIRE(obj->getLayer(0)->type() == Layer::SOUND);
74 SECTION(
"Add 3 layers")
76 REQUIRE(obj->getLayerCount() == 0);
78 obj->addNewSoundLayer();
79 REQUIRE(obj->getLayerCount() == 1);
80 REQUIRE(obj->getLayer(0)->type() == Layer::SOUND);
82 obj->addNewCameraLayer();
83 REQUIRE(obj->getLayerCount() == 2);
84 REQUIRE(obj->getLayer(1)->type() == Layer::CAMERA);
86 obj->addNewBitmapLayer();
87 REQUIRE(obj->getLayerCount() == 3);
88 REQUIRE(obj->getLayer(2)->type() == Layer::BITMAP);
91 SECTION(
"Add 500 layers")
93 REQUIRE(obj->getLayerCount() == 0);
94 for (
int i = 0; i < 500; ++i)
96 obj->addNewBitmapLayer();
98 REQUIRE(obj->getLayerCount() == 500);
106 TEST_CASE(
"Object::getUniqueLayerID()")
108 SECTION(
"getUniqueLayerID")
110 std::unique_ptr<Object> obj(
new Object);
112 Layer* bitmapLayer = obj->addNewBitmapLayer();
113 REQUIRE(bitmapLayer->id() == 1);
114 REQUIRE(obj->getUniqueLayerID() == 2);
116 Layer* vectorLayer = obj->addNewVectorLayer();
117 REQUIRE(vectorLayer->id() == 2);
118 REQUIRE(obj->getUniqueLayerID() == 3);