ssu
Loading...
Searching...
No Matches
featuremodeltest.cpp
Go to the documentation of this file.
1
7
8#include "featuremodeltest.h"
9
10#include <QtTest/QtTest>
11#include <QtTest/QSignalSpy>
13
14void FeatureModelTest::initTestCase()
15{
16
17}
18
19void FeatureModelTest::cleanupTestCase()
20{
21
22}
23
24void FeatureModelTest::testFeatures()
25{
26 SsuFeatureModel featureModel(0, ":/testdata");
27
28 // Features with no name are skipped (feature-noname.ini)
29 QCOMPARE(featureModel.count(), 3);
30
31 // First feature is "Feature A" in version 0.1
32
33 // Explicit getter
34 const QHash<QByteArray, QString> featureA = featureModel.featureAt(0);
35 QCOMPARE(featureA.value("name"), QString("Feature A"));
36 QCOMPARE(featureA.value("version"), QString("0.1"));
37
38 // Through QAbstractListModel API
39 QCOMPARE(featureModel.data(featureModel.index(0), SsuFeatureModel::Name).toString(), QString("Feature A"));
40 QCOMPARE(featureModel.data(featureModel.index(0), SsuFeatureModel::Version).toString(), QString("0.1"));
41
42 // Second feature is "Feature B" in version 0.2
43 const QHash<QByteArray, QString> featureB = featureModel.featureAt(1);
44 QCOMPARE(featureB.value("name"), QString("Feature B"));
45 QCOMPARE(featureB.value("version"), QString("0.2"));
46
47 // Third feature lacks version number
48 const QHash<QByteArray, QString> featureWithoutVersion = featureModel.featureAt(2);
49 QCOMPARE(featureWithoutVersion.value("name"), QString("Feature without version"));
50 QCOMPARE(featureWithoutVersion.value("version"), QString(""));
51}