logsui/logsengine/tsrc/ut_logsengine/src/ut_logscontact.cpp
changeset 17 90fe74753f71
parent 15 76d2cf7a585e
child 21 2f0af9ba7665
--- a/logsui/logsengine/tsrc/ut_logsengine/src/ut_logscontact.cpp	Mon Aug 23 18:14:51 2010 +0300
+++ b/logsui/logsengine/tsrc/ut_logsengine/src/ut_logscontact.cpp	Fri Sep 03 14:26:05 2010 +0300
@@ -30,6 +30,8 @@
 const char logsIContactsView[] = "com.nokia.symbian.IContactsView";
 const char logsIContactsEdit[] = "com.nokia.symbian.IContactsEdit";
 
+const int groupId = 99;
+
 
 void UT_LogsContact::initTestCase()
 {
@@ -90,6 +92,16 @@
     QVERIFY( mLogsEvent->logsEventData()->contactLocalId() );
     QVERIFY( mLogsContact->allowedRequestType() == LogsContact::TypeLogsContactOpen );
     
+    //group is in phonebook => open is allowed
+    mLogsEvent->logsEventData()->setContactLocalId(groupId);
+    QtContactsStubsHelper::setContactId(groupId);
+    delete mLogsContact;
+    mLogsContact = 0;
+    mLogsContact = new LogsContact(*mLogsEvent, *mDbConnector);
+    QVERIFY( mLogsEvent->logsEventData()->contactLocalId() );
+    QVERIFY( mLogsContact->allowedRequestType() == LogsContact::TypeLogsContactOpenGroup );
+    
+    
     //contact not in phonebook, but caller ID present => save allowed
     QtContactsStubsHelper::reset();
     delete mLogsContact;
@@ -122,7 +134,7 @@
              == logsIContactsView );
     QVERIFY( mLogsContact->mAiwRequest->operation() == "openContactCard(int)" );
     QVERIFY( QtHighwayStubHelper::isRequestEmbedded() );
-    QVERIFY( !QtHighwayStubHelper::isRequestSynchronous() );
+    QVERIFY( !QtHighwayStubHelper::isRequestSynchronous() );    
     
     // Same but without using logsevent at construction
     QtHighwayStubHelper::reset();
@@ -136,6 +148,22 @@
     QVERIFY( QtHighwayStubHelper::isRequestEmbedded() );
     QVERIFY( !QtHighwayStubHelper::isRequestSynchronous() );
     
+    //group is in phonebook, open is ok
+    QtHighwayStubHelper::reset();
+    mLogsEvent->logsEventData()->setContactLocalId(groupId);
+    QtContactsStubsHelper::setContactId(groupId);
+    delete mLogsContact;
+    mLogsContact = 0;
+    mLogsContact = new LogsContact(*mLogsEvent, *mDbConnector);
+    QVERIFY( mLogsContact->open() );
+    QVERIFY( mLogsContact->mAiwRequest );
+    QVERIFY( mLogsContact->mCurrentRequest == LogsContact::TypeLogsContactOpenGroup );
+    QVERIFY( mLogsContact->mAiwRequest->descriptor().interfaceName()
+             == logsIContactsView );
+    QVERIFY( mLogsContact->mAiwRequest->operation() == "openGroup(int)" );
+    QVERIFY( QtHighwayStubHelper::isRequestEmbedded() );
+    QVERIFY( !QtHighwayStubHelper::isRequestSynchronous() );
+
     // Request sending failed
     QtHighwayStubHelper::reset();
     QtHighwayStubHelper::setFailCreateAiwRequest(true);