Initial code
[evehomescreen] / tests / main.cpp
1 #include <QtCore/QCoreApplication>
2 #include <QtTest/QtTest>
3 #include <eveaccount.h>
4 #include <evemodel.h>
5 #include <eveskilltraining.h>
6 #include "skilltree.h"
7 #include <QFile>
8 class EveModelTest: public QObject
9 {
10     Q_OBJECT
11 private slots:
12     void testXml();
13     void testSkills();
14     void testSkillTree();
15 };
16
17 #define GONTH_ID 1525655037
18
19 void EveModelTest::testXml()
20 {
21     EveModel model;
22     model.setApiKey("2A671E53172C4F8A878BB770BBABFBD3CFF31815927F4E5591EA6D5576456E50");
23     model.setUserId(4079475);
24     model.fetchAccounts();
25     QSignalSpy spy(&model,SIGNAL(accountsReady()));
26     QTest::qWait(1000);
27     QCOMPARE(spy.length(),1);
28     QCOMPARE(model.characters().length(),2);
29     EveCharacter e;
30     foreach (e,model.characters()) {
31         qDebug() << e.name << ":" << e.characterId;
32     }
33     e = model.characters()[0];
34     qDebug() << "e assigned";
35     QSignalSpy imagespy(&e,SIGNAL(imageLoaded()));
36     qDebug() << "spy installed";
37     e.fetchImage();
38     qDebug() << "fetchImage called";
39     QTest::qWait(3000);
40     qDebug() << "waited";
41     qDebug() << e.characterIcon;
42     QVERIFY(imagespy.length() == 1);
43     qDebug() << "Test done";
44 }
45
46 void EveModelTest::testSkills()
47 {
48     EveModel model;
49     model.setApiKey("2A671E53172C4F8A878BB770BBABFBD3CFF31815927F4E5591EA6D5576456E50");
50     model.setUserId(4079475);
51     model.fetchAccounts();
52     QTest::qWait(1000);
53     EveCharacter e = model.characters()[0];
54     EveSkillTraining skill;
55     skill.setCharacter(&e);
56     skill.setAccount(&model);
57     skill.fetchInfo();
58     QTest::qWait(1000);
59     qDebug() << skill.startTime
60             << skill.endTime
61             << skill.typeId
62             << skill.startSkillpoints
63             << skill.destSkillpoints
64             << skill.level;
65 }
66
67 void EveModelTest::testSkillTree()
68 {
69     SkillTree stree;
70     QSignalSpy spy(&stree,SIGNAL(skillsLoaded()));
71     stree.loadSkills();
72     QTest::qWait(5000);
73     QCOMPARE(spy.count(),1);
74     QCOMPARE(stree.skillName(3442),QString("Drone Interfacing"));
75     stree.save();
76     QVERIFY(QFile::exists("/var/tmp/skillCache"));
77     QFile::remove("/var/tmp/skillCache");
78 }
79
80 QTEST_MAIN(EveModelTest)
81
82 #include "main.moc"