Implemented unit tests for:
[yamf.git] / tests / command / addlayer / test_addlayer.cpp
blob8d4ad48c1d82ac7ef9f3d38e6d59a5a9ead79e08
2 #include <QtTest/QtTest>
4 #include <QFile>
5 #include <QDebug>
7 #include <model/command/addlayer.h>
8 #include <model/scene.h>
9 #include <model/layer.h>
10 #include <common/inthash.h>
13 class TestAddLayer: public QObject
15 Q_OBJECT
16 private slots:
17 void execute();
18 void unexecute();
21 void TestAddLayer::execute()
23 YAMF::Model::Project *project = new YAMF::Model::Project;
24 YAMF::Model::Scene *scene = new YAMF::Model::Scene(project);
25 YAMF::Model::Layer *layer = new YAMF::Model::Layer(scene);
27 YAMF::Common::IntHash<YAMF::Model::Layer *> layers;
29 YAMF::Command::AddLayer cmd(layer, &layers);
30 cmd.redo();
32 QCOMPARE(layers.count(), 1 );
33 QVERIFY( layers[0] == layer );
35 delete layer;
36 delete scene;
37 delete project;
41 void TestAddLayer::unexecute()
43 YAMF::Model::Project *project = new YAMF::Model::Project;
44 YAMF::Model::Scene *scene = new YAMF::Model::Scene(project);
45 YAMF::Model::Layer *layer = new YAMF::Model::Layer(scene);
47 YAMF::Common::IntHash<YAMF::Model::Layer *> layers;
49 YAMF::Command::AddLayer cmd(layer, &layers);
50 cmd.redo();
51 cmd.undo();
53 QCOMPARE(layers.count(), 0);
55 delete layer;
56 delete scene;
57 delete project;
61 QTEST_MAIN(TestAddLayer)
62 #include "test_addlayer.moc"