diff --git a/libcontacts.pro b/libcontacts.pro index 0bae8a8..267ac44 100644 --- a/libcontacts.pro +++ b/libcontacts.pro @@ -1,4 +1,5 @@ TEMPLATE = subdirs SUBDIRS = src tests +OTHER_FILES += rpm/libcontacts-qt5.spec tests.depends = src diff --git a/rpm/libcontacts-qt5.spec b/rpm/libcontacts-qt5.spec index 50b949c..082aa3b 100644 --- a/rpm/libcontacts-qt5.spec +++ b/rpm/libcontacts-qt5.spec @@ -22,6 +22,7 @@ BuildRequires: pkgconfig(qtcontacts-sqlite-qt5-extensions) >= 0.2.1 %package tests Summary: Nemo contact cache library tests Group: System/Libraries +Requires: blts-tools Requires: %{name} = %{version}-%{release} %description tests diff --git a/src/seasidecache.cpp b/src/seasidecache.cpp index 6a11485..f3713f5 100644 --- a/src/seasidecache.cpp +++ b/src/seasidecache.cpp @@ -170,6 +170,9 @@ QMap managerParameters() QMap rv; // Report presence changes independently from other contact changes rv.insert(QString::fromLatin1("mergePresenceChanges"), QString::fromLatin1("false")); + if (!qgetenv("LIBCONTACTS_TEST_MODE").isEmpty()) { + rv.insert(QString::fromLatin1("autoTest"), QString::fromLatin1("true")); + } return rv; } diff --git a/tests/tests.pro b/tests/tests.pro index 9db5aaa..d59e013 100644 --- a/tests/tests.pro +++ b/tests/tests.pro @@ -2,6 +2,7 @@ include(../package.pri) TEMPLATE = subdirs SUBDIRS = tst_synchronizelists tst_seasideimport tst_resolve +OTHER_FILES += tests.xml.in tests_xml.target = tests.xml tests_xml.depends = $$PWD/tests.xml.in diff --git a/tests/tests.xml.in b/tests/tests.xml.in index 4b58320..f8a3574 100644 --- a/tests/tests.xml.in +++ b/tests/tests.xml.in @@ -5,13 +5,13 @@ Contact cache automatic tests - /opt/tests/@PACKAGENAME@/tst_synchronizelists + LIBCONTACTS_TEST_MODE=1 /usr/sbin/run-blts-root /bin/su -g privileged -c '/opt/tests/@PACKAGENAME@/tst_synchronizelists' nemo - /opt/tests/@PACKAGENAME@/tst_seasideimport + LIBCONTACTS_TEST_MODE=1 /usr/sbin/run-blts-root /bin/su -g privileged -c '/opt/tests/@PACKAGENAME@/tst_seasideimport' nemo - /opt/tests/@PACKAGENAME@/tst_resolve + LIBCONTACTS_TEST_MODE=1 /usr/sbin/run-blts-root /bin/su -g privileged -c '/opt/tests/@PACKAGENAME@/tst_resolve' nemo diff --git a/tests/tst_seasideimport/tst_seasideimport.cpp b/tests/tst_seasideimport/tst_seasideimport.cpp index cfeb255..d89b031 100644 --- a/tests/tst_seasideimport/tst_seasideimport.cpp +++ b/tests/tst_seasideimport/tst_seasideimport.cpp @@ -468,10 +468,15 @@ void tst_SeasideImport::mergedUid() QCOMPARE(name.isEmpty(), true); const QList nicknames(c.details()); - QCOMPARE(nicknames.count(), 1); + QCOMPARE(nicknames.count(), 2); - const QContactNickname nick(nicknames.at(0)); - QCOMPARE(nick.nickname(), QString::fromLatin1("Jebediah Springfield")); + const QContactNickname nick1(nicknames.at(0)); + const QContactNickname nick2(nicknames.at(1)); + QVERIFY(nick1.nickname() == QString::fromLatin1("Jebediah Springfield") + || nick1.nickname() == QString::fromLatin1("Obadiah Springfield")); + QVERIFY(nick2.nickname() == QString::fromLatin1("Jebediah Springfield") + || nick2.nickname() == QString::fromLatin1("Obadiah Springfield")); + QVERIFY(nick1.nickname() != nick2.nickname()); const QList phoneNumbers(c.details()); QCOMPARE(phoneNumbers.count(), 2); @@ -494,4 +499,4 @@ void tst_SeasideImport::mergedUid() } #include "tst_seasideimport.moc" -QTEST_APPLESS_MAIN(tst_SeasideImport) +QTEST_GUILESS_MAIN(tst_SeasideImport)