[SCM] ktp-common-internals packaging branch, master, updated. debian/15.12.1-2-1839-gf0635e9

Maximiliano Curia maxy at moszumanska.debian.org
Mon May 9 09:07:17 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-common-internals.git;a=commitdiff;h=85c97aa

The following commit has been merged in the master branch:
commit 85c97aa073e4771a7b859fcf040a615f379bfef4
Author: George Goldberg <george.goldberg at collabora.co.uk>
Date:   Fri Jan 28 18:38:15 2011 +0000

    Add a unit test for contact groups.
---
 kpeople/nepomuk-feeder/tests/storage-test.cpp | 112 ++++++++++++++++++++++++++
 kpeople/nepomuk-feeder/tests/storage-test.h   |   1 +
 2 files changed, 113 insertions(+)

diff --git a/kpeople/nepomuk-feeder/tests/storage-test.cpp b/kpeople/nepomuk-feeder/tests/storage-test.cpp
index a2a4df8..202a904 100644
--- a/kpeople/nepomuk-feeder/tests/storage-test.cpp
+++ b/kpeople/nepomuk-feeder/tests/storage-test.cpp
@@ -23,6 +23,8 @@
 
 #include "test-backdoors.h"
 
+#include "ontologies/contactgroup.h"
+
 #include <KDebug>
 
 #include <qtest_kde.h>
@@ -729,6 +731,116 @@ void StorageTest::testSetContactPresence()
     pC2.remove();
 }
 
+void StorageTest::testSetContactGroups()
+{
+    // Create the Storage.
+    m_storage = new NepomukStorage(this);
+    QVERIFY(m_storage);
+
+    QHash<QString, Nepomuk::IMAccount> *accounts = TestBackdoors::nepomukStorageAccounts(m_storage);
+    QHash<ContactIdentifier, ContactResources> *contacts = TestBackdoors::nepomukStorageContacts(m_storage);
+
+    // Create an account on the storage.
+    m_storage->createAccount(QLatin1String("/foo/bar/baz"),
+                             QLatin1String("foo at bar.baz"),
+                             QLatin1String("test"));
+
+    // Check the Account is created
+    QCOMPARE(TestBackdoors::nepomukStorageAccounts(m_storage)->size(), 1);
+    QCOMPARE(TestBackdoors::nepomukStorageContacts(m_storage)->size(), 0);
+
+    // And in Nepomuk...
+    Nepomuk::IMAccount imAcc1 = accounts->value(QLatin1String("/foo/bar/baz"));
+    QVERIFY(imAcc1.exists());
+    QCOMPARE(imAcc1.isAccessedByOf().size(), 0);
+
+    // Create a contact
+    m_storage->createContact(QLatin1String("/foo/bar/baz"),
+                             QLatin1String("test at remote-contact.com"));
+
+    // Check the Contact is created.
+    QCOMPARE(TestBackdoors::nepomukStorageAccounts(m_storage)->size(), 1);
+    QCOMPARE(TestBackdoors::nepomukStorageContacts(m_storage)->size(), 1);
+
+    // Check its identifier is correct.
+    ContactIdentifier cId2(QLatin1String("/foo/bar/baz"), QLatin1String("test at remote-contact.com"));
+    QVERIFY(contacts->contains(cId2));
+
+    // Check the Nepomuk resources are created correctly.
+    ContactResources cRes2 = contacts->value(cId2);
+    Nepomuk::IMAccount imAcc2 = cRes2.imAccount();
+    Nepomuk::PersonContact pC2 = cRes2.personContact();
+    QVERIFY(imAcc2.exists());
+    QVERIFY(pC2.exists());
+
+    // Check that the groups property is initially empty.
+    QCOMPARE(pC2.belongsToGroups().size(), 0);
+    QCOMPARE(Nepomuk::ContactGroup::allContactGroups().size(), 0);
+
+    // Add to a group that doesn't already exist
+    m_storage->setContactGroups(QLatin1String("/foo/bar/baz"), QLatin1String("test at remote-contact.com"),
+                                QStringList() << QLatin1String("testgroup1"));
+
+    // Add to a group we're already in
+    QCOMPARE(Nepomuk::ContactGroup::allContactGroups().size(), 1);
+    QCOMPARE(pC2.belongsToGroups().size(), 1);
+    QCOMPARE(pC2.belongsToGroups().first().contactGroupName(), QLatin1String("testgroup1"));
+
+    // Create a group in Nepomuk so we can try adding ourselves to an already existing group and
+    // check it succeeds.
+    Nepomuk::ContactGroup g2;
+    QVERIFY(!g2.exists());
+    g2.setContactGroupName(QLatin1String("testgroup2"));
+    QCOMPARE(g2.contactGroupName(), QLatin1String("testgroup2"));
+    QVERIFY(g2.exists());
+    QCOMPARE(Nepomuk::ContactGroup::allContactGroups().size(), 2);
+
+    // Add the contact to that group.
+    m_storage->setContactGroups(QLatin1String("/foo/bar/baz"), QLatin1String("test at remote-contact.com"),
+                                QStringList() << QLatin1String("testgroup1") << QLatin1String("testgroup2"));
+
+    // Check it worked OK
+    QCOMPARE(Nepomuk::ContactGroup::allContactGroups().size(), 2);
+    QCOMPARE(pC2.belongsToGroups().size(), 2);
+    QVERIFY(!(pC2.belongsToGroups().at(0) == g2) ^ !(pC2.belongsToGroups().at(1) == g2));
+
+    // Remove from a group
+    m_storage->setContactGroups(QLatin1String("/foo/bar/baz"), QLatin1String("test at remote-contact.com"),
+                                QStringList() << QLatin1String("testgroup1"));
+
+    // Check it worked OK
+    QCOMPARE(Nepomuk::ContactGroup::allContactGroups().size(), 2);
+    QCOMPARE(pC2.belongsToGroups().size(), 1);
+    QCOMPARE(pC2.belongsToGroups().first().contactGroupName(), QLatin1String("testgroup1"));
+
+    // Add ourselves to two groups, one of which doesn't yet exist
+    m_storage->setContactGroups(QLatin1String("/foo/bar/baz"), QLatin1String("test at remote-contact.com"),
+                                QStringList() << QLatin1String("testgroup1") << QLatin1String("testgroup2")
+                                              << QLatin1String("testgroup3"));
+
+    // Check it worked OK
+    QCOMPARE(Nepomuk::ContactGroup::allContactGroups().size(), 3);
+    QCOMPARE(pC2.belongsToGroups().size(), 3);
+
+    // Remove ourselves from two groups
+    m_storage->setContactGroups(QLatin1String("/foo/bar/baz"), QLatin1String("test at remote-contact.com"),
+                                QStringList() << QLatin1String("testgroup2")
+                                              << QLatin1String("testgroup3"));
+
+    // Check it worked OK
+    QCOMPARE(Nepomuk::ContactGroup::allContactGroups().size(), 3);
+    QCOMPARE(pC2.belongsToGroups().size(), 2);
+
+    // Cleanup
+    imAcc1.remove();
+    imAcc2.remove();
+    pC2.remove();
+
+    foreach (Nepomuk::ContactGroup g, Nepomuk::ContactGroup::allContactGroups()) {
+        g.remove();
+    }
+}
+
 void StorageTest::testSetContactBlockedStatus()
 {
     // Create the Storage.
diff --git a/kpeople/nepomuk-feeder/tests/storage-test.h b/kpeople/nepomuk-feeder/tests/storage-test.h
index 247049a..ab5f05f 100644
--- a/kpeople/nepomuk-feeder/tests/storage-test.h
+++ b/kpeople/nepomuk-feeder/tests/storage-test.h
@@ -49,6 +49,7 @@ private Q_SLOTS:
     void testDestroyContact();
     void testSetContactAlias();
     void testSetContactPresence();
+    void testSetContactGroups();
     void testSetContactBlockedStatus();
     void testSetContactPublishState();
     void testSetContactSubscriptionState();

-- 
ktp-common-internals packaging



More information about the pkg-kde-commits mailing list