1
#include <QtCore/QString>
2
#include <QtTest/QtTest>
4
#include <maliit/attributeextensionregistry.h>
7
using Maliit::AttributeExtensionRegistry;
8
using Maliit::AttributeExtension;
10
typedef std::tr1::shared_ptr<Maliit::AttributeExtension> SharedAttributeExtension;
13
SharedAttributeExtension createDefault()
15
return SharedAttributeExtension(new Maliit::AttributeExtension(QString()));
18
int id(const QWeakPointer<AttributeExtension> &ptr)
20
AttributeExtension *extension = ptr.data();
22
return extension->id();
28
class Ut_Maliit_AttributeExtensionRegistry : public QObject
34
void testAddExtension();
35
void testRemoveExtension();
36
void testExtensionRegisteredSignal();
37
void testExtensionUnregisteredSignal();
38
void testExtensionChangedSignal();
41
void Ut_Maliit_AttributeExtensionRegistry::testDefault()
43
QVERIFY(AttributeExtensionRegistry::instance()->extensions().empty());
46
void Ut_Maliit_AttributeExtensionRegistry::testAddExtension()
48
SharedAttributeExtension extension(createDefault());
50
QCOMPARE(AttributeExtensionRegistry::instance()->extensions().size(), 1);
51
QCOMPARE(id(AttributeExtensionRegistry::instance()->extensions().first()), extension->id());
54
void Ut_Maliit_AttributeExtensionRegistry::testRemoveExtension()
56
SharedAttributeExtension extension(createDefault());
60
QCOMPARE(AttributeExtensionRegistry::instance()->extensions().size(), 0);
63
void Ut_Maliit_AttributeExtensionRegistry::testExtensionRegisteredSignal()
65
QSignalSpy spy(AttributeExtensionRegistry::instance(), SIGNAL(extensionRegistered(int,QString)));
67
SharedAttributeExtension extension(createDefault());
69
QCOMPARE(spy.size(), 1);
70
QCOMPARE(spy.first().at(0).toInt(), extension->id());
71
QCOMPARE(spy.first().at(1).toString(), extension->fileName());
74
void Ut_Maliit_AttributeExtensionRegistry::testExtensionUnregisteredSignal()
76
QSignalSpy spy(AttributeExtensionRegistry::instance(), SIGNAL(extensionUnregistered(int)));
78
SharedAttributeExtension extension(createDefault());
79
int id = extension->id();
82
QCOMPARE(spy.size(), 1);
83
QCOMPARE(spy.first().at(0).toInt(), id);
86
void Ut_Maliit_AttributeExtensionRegistry::testExtensionChangedSignal()
88
QSignalSpy spy(AttributeExtensionRegistry::instance(), SIGNAL(extensionChanged(int,QString,QVariant)));
90
const QString &key = QString::fromLatin1("TestKey");
91
const QVariant &value(QString::fromLatin1("TestValue"));
93
SharedAttributeExtension extension(createDefault());
94
extension->setAttribute(key, value);
96
QCOMPARE(spy.size(), 1);
97
QCOMPARE(spy.first().at(0).toInt(), extension->id());
98
QCOMPARE(spy.first().at(1).toString(), key);
99
QCOMPARE(spy.first().at(2).value<QVariant>(), value);
102
QTEST_APPLESS_MAIN(Ut_Maliit_AttributeExtensionRegistry)
104
#include "ut_maliit_attributeextensionregistry.moc"