Subversion Repositories public iLand

Rev

Rev 1221 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
95 Werner 1
#include <QtTest/QtTest>
2
#include <QtXml>
3
 
4
 
5
#include "xmlhelper.h"
99 Werner 6
#include "globalsettings.h"
95 Werner 7
 
8
class TestXmlHelper: public QObject
9
{
10
    Q_OBJECT
11
private:
12
    XmlHelper xml;
13
private slots:
14
    void initTestCase();
15
    void cleanupTestCase();
16
 
17
    void toUpper();
18
    void traverse();
19
    void dump();
99 Werner 20
    // file path
21
    void filepath();
95 Werner 22
};
23
 
24
 
25
void TestXmlHelper::initTestCase()
26
{
27
    //model = new Model();
28
    //model->loadProject();
29
    xml.loadFromFile("E:\\dev\\iland\\src\\tests\\testXmlHelper\\xmlHelperTest.xml");
30
}
31
 
32
void TestXmlHelper::cleanupTestCase()
33
{
34
    //delete model;
35
    //QTest::qWait(5000);
36
}
37
 
38
void TestXmlHelper::traverse()
39
{
40
    QVERIFY( !xml.node("").isNull() ); // top node
41
    QVERIFY( !xml.node("test.block.a").isNull() ); // traverse
42
    xml.setCurrentNode("test.block");
43
    QVERIFY( !xml.node(".b").isNull() );
44
    QVERIFY( !xml.node(".b.c").isNull() );
45
    QVERIFY (!xml.node("test.block.b.c").isNull() );
46
    QVERIFY (!xml.node(".b[0]").isNull() );
47
    QVERIFY (!xml.node(".b[0].d").isNull() );
48
    QVERIFY (!xml.node("test.block[1].n[2].o").isNull() );
49
 
50
    QCOMPARE( xml.value("test.block.b.c"), QString("c"));
51
    QCOMPARE( xml.value("test.block.b.c.nonexistent", "0"), QString("0"));
52
    QCOMPARE( xml.value("test.block[1].n[2].o"), QString("o"));
53
}
54
 
55
void TestXmlHelper::dump()
56
{
57
    qDebug() << xml.dump("test");
58
    qDebug() << xml.dump("path");
59
    qDebug() << xml.dump("species");
60
}
61
 
62
void TestXmlHelper::toUpper()
63
{
64
    QString str = "Hello";
65
    QCOMPARE(str.toUpper(), QString("HELLO"));
66
}
67
 
99 Werner 68
void TestXmlHelper::filepath()
69
{
70
    // setup file paths...
71
    xml.dump("path");
72
    GlobalSettings::instance()->setupDirectories(xml.node("path"));
73
 
74
}
75
 
76
 
95 Werner 77
QTEST_MAIN(TestXmlHelper)
78
#include "testXmlHelper.moc"
79
 
80