homescreensrv_plat/contentstorage_api/tsrc/t_contentstorage_api/src/t_caclient_getentries.cpp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/homescreensrv_plat/contentstorage_api/tsrc/t_contentstorage_api/src/t_caclient_getentries.cpp Wed Oct 06 16:00:22 2010 +0300
@@ -0,0 +1,188 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Main test class for hspluginmodel library.
+*
+*/
+
+
+#include "t_caclient.h"
+#include "caservice.h"
+#include "caquery.h"
+
+
+// ---------------------------------------------------------------------------
+//
+// ---------------------------------------------------------------------------
+//
+void TestCaClient::Test_getEntry()
+{
+ {
+ CaEntry item;
+ item.setText("testName");
+ item.setAttribute("attrName1", "attrVal1");
+ item.setEntryTypeName("test");
+ item.setFlags(RemovableEntryFlag);
+
+ CaIconDescription iconDescription;
+ iconDescription.setFilename("iconFileName");
+ iconDescription.setSkinId("iconSkinId");
+ iconDescription.setApplicationId("268458321");
+ item.setIconDescription(iconDescription);
+
+ QSharedPointer<CaService> service = CaService::instance();
+ QSharedPointer<CaEntry> resultItem = service->createEntry(item);
+
+ QVERIFY(!resultItem.isNull());
+ // entry from storage
+ QSharedPointer<CaEntry> storageItem1 = service->getEntry(resultItem->id());
+ QCOMPARE(service->lastError(), NoErrorCode);
+ QVERIFY(storageItem1);
+ QCOMPARE(storageItem1->role(), ItemEntryRole);
+ QCOMPARE(QString("testName"),storageItem1->text());
+ QCOMPARE(QString("test"),storageItem1->entryTypeName());
+ QCOMPARE(QString("attrVal1"),storageItem1->attribute("attrName1"));
+ QCOMPARE(item.flags(),storageItem1->flags());
+ QCOMPARE(iconDescription.filename(),storageItem1->iconDescription().filename());
+ QCOMPARE(iconDescription.skinId(),storageItem1->iconDescription().skinId());
+ QCOMPARE(iconDescription.applicationId(),storageItem1->iconDescription().applicationId());
+ QSharedPointer<CaEntry> storageItem2 = service->getEntry(9999);
+ QVERIFY(service->lastError() != NoErrorCode);
+ QVERIFY(!storageItem2);
+
+ //Cleanup
+ service->removeEntry(*resultItem);
+
+ }
+}
+
+// ---------------------------------------------------------------------------
+//
+// ---------------------------------------------------------------------------
+//
+void TestCaClient::Test_getEntries_ByIds()
+{
+ {
+ CaEntry item;
+ item.setText("testName1");
+ item.setAttribute("attrName1", "attrVal1");
+ item.setEntryTypeName("test");
+ item.setFlags(RemovableEntryFlag);
+
+ QSharedPointer<CaService> service = CaService::instance();
+ QSharedPointer<CaEntry> resultItem1 = service->createEntry(item);
+ item.setText("testName2");
+ QSharedPointer<CaEntry> resultItem2 = service->createEntry(item);
+ item.setText("testName3");
+ QSharedPointer<CaEntry> resultItem3 = service->createEntry(item);
+ QVERIFY(!resultItem1.isNull());
+ QVERIFY(!resultItem2.isNull());
+ QVERIFY(!resultItem3.isNull());
+
+ QList<int> ids;
+ ids.append(resultItem1->id());
+ ids.append(resultItem3->id());
+ ids.append(resultItem2->id());
+
+ QList< QSharedPointer<CaEntry> > entries = service->getEntries(ids) ;
+ QCOMPARE(entries.count(), 3);
+ QCOMPARE(service->lastError(), NoErrorCode);
+
+ QVERIFY(entries.at(0));
+ QCOMPARE(entries.at(0)->role(), ItemEntryRole);
+ QCOMPARE(QString("testName1"),entries.at(0)->text());
+ QCOMPARE(QString("test"),entries.at(0)->entryTypeName());
+ QCOMPARE(QString("attrVal1"),entries.at(0)->attribute("attrName1"));
+ QCOMPARE(item.flags(),entries.at(0)->flags());
+ QVERIFY(entries.at(1));
+ QCOMPARE(entries.at(1)->role(), ItemEntryRole);
+ QCOMPARE(QString("testName3"),entries.at(1)->text());
+ QCOMPARE(QString("test"),entries.at(1)->entryTypeName());
+ QCOMPARE(QString("attrVal1"),entries.at(1)->attribute("attrName1"));
+ QCOMPARE(item.flags(),entries.at(1)->flags());
+ QVERIFY(entries.at(2));
+ QCOMPARE(entries.at(2)->role(), ItemEntryRole);
+ QCOMPARE(QString("testName2"),entries.at(2)->text());
+ QCOMPARE(QString("test"),entries.at(2)->entryTypeName());
+ QCOMPARE(QString("attrVal1"),entries.at(2)->attribute("attrName1"));
+ QCOMPARE(item.flags(),entries.at(2)->flags());
+
+ QCOMPARE(entries.at(0)->id(),resultItem1->id());
+ QCOMPARE(entries.at(1)->id(),resultItem3->id());
+ QCOMPARE(entries.at(2)->id(),resultItem2->id());
+
+ QList<int> ids2;
+ ids2.append(resultItem1->id());
+ ids2.append(9999);
+
+ QList< QSharedPointer<CaEntry> > entries2 = service->getEntries(ids2) ;
+ QCOMPARE(entries2.count(), 1);
+ QVERIFY(service->lastError() != NoErrorCode);
+
+ //Cleanup
+ service->removeEntry(*resultItem1);
+ service->removeEntry(*resultItem2);
+ service->removeEntry(*resultItem3);
+ }
+}
+
+// ---------------------------------------------------------------------------
+//
+// ---------------------------------------------------------------------------
+//
+void TestCaClient::Test_getEntries_ByQuery()
+{
+ {
+ //CHECK INITIAL STATE IN DB
+ QSharedPointer<CaService> service = CaService::instance();
+ CaQuery query;
+ QStringList strList;
+ strList << QString("test_item1");
+ query.setEntryTypeNames(strList);
+ query.addEntryTypeName(QString("test_item2"));
+ QList< QSharedPointer<CaEntry> > entries12 = service->getEntries(query);
+ int count12Before = entries12.count();
+
+ //ADD TEST DATA TO THE STORAGE
+ CaEntry item1;
+ item1.setText("testName_item1");
+ item1.setAttribute("attrName1_item", "attrVal1_item");
+ item1.setEntryTypeName("test_item1");
+ CaEntry item2;
+ item2.setText("testName_item2");
+ item2.setAttribute("attrName2_item", "attrVal2_item");
+ item2.setEntryTypeName("test_item2");
+
+ QSharedPointer<CaEntry> resultEntry1 = service->createEntry(item1);
+ QSharedPointer<CaEntry> resultEntry2 = service->createEntry(item2);
+ QVERIFY(!resultEntry1.isNull());
+ QVERIFY(!resultEntry2.isNull());
+
+ //GET STATE FROM THE STORAGE AFTER ADD
+ strList.clear();
+ strList << QString("test_item1");
+ query.setEntryTypeNames(strList);
+ query.addEntryTypeName(QString("test_item2"));
+ entries12 = service->getEntries(query);
+ QCOMPARE(service->lastError(), NoErrorCode);
+ int count12After = entries12.count();
+
+ //CHECK RESULTS
+ QCOMPARE(count12Before+2,count12After);
+
+ //CLEANUP THE STORAGE AFTER THE TEST
+ service->removeEntry(*resultEntry1);
+ service->removeEntry(*resultEntry2);
+ }
+}
+