logsui/logsengine/tsrc/ut_logsengine/src/ut_logscall.cpp
changeset 16 c5af8598d22c
parent 10 b04270301d3b
child 21 2f0af9ba7665
equal deleted inserted replaced
14:f27aebe284bb 16:c5af8598d22c
    18 #include "logscall.h"
    18 #include "logscall.h"
    19 #include "logsmodel.h"
    19 #include "logsmodel.h"
    20 #include "logsevent.h"
    20 #include "logsevent.h"
    21 #include "logseventdata.h"
    21 #include "logseventdata.h"
    22 #include "qthighway_stub_helper.h"
    22 #include "qthighway_stub_helper.h"
       
    23 #include "hbstubs_helper.h"
    23 
    24 
    24 #include <QtTest/QtTest>
    25 #include <QtTest/QtTest>
       
    26 
       
    27 const char logsICallDial[] = "phoneui.com.nokia.symbian.ICallDial";
    25 
    28 
    26 void UT_LogsCall::initTestCase()
    29 void UT_LogsCall::initTestCase()
    27 {
    30 {
    28 }
    31 }
    29 
    32 
    51 void UT_LogsCall::testConstructor()
    54 void UT_LogsCall::testConstructor()
    52 {
    55 {
    53     QVERIFY( mLogsCall );
    56     QVERIFY( mLogsCall );
    54     QVERIFY( mLogsCall->mDefaultCall == LogsCall::TypeLogsVoiceCall );
    57     QVERIFY( mLogsCall->mDefaultCall == LogsCall::TypeLogsVoiceCall );
    55     QVERIFY( mLogsCall->mNumber == QString::number(12345) );
    58     QVERIFY( mLogsCall->mNumber == QString::number(12345) );
       
    59     QCOMPARE( mLogsCall->mContactId, (unsigned int)0 );
    56     
    60     
    57     LogsCall callWithContact(2, "2222" );
    61     LogsCall callWithContact(2, "2222" );
    58     QVERIFY( callWithContact.mDefaultCall == LogsCall::TypeLogsVoiceCall );
    62     QVERIFY( callWithContact.mDefaultCall == LogsCall::TypeLogsVoiceCall );
    59     QVERIFY( callWithContact.mNumber == "2222" );
    63     QVERIFY( callWithContact.mNumber == "2222" );
       
    64     QCOMPARE( callWithContact.mContactId, (unsigned int)2 );
    60     
    65     
    61     LogsCall callWithContact2(2, "user@server.com" );
    66     LogsCall callWithContact2(2, "user@server.com" );
    62     QVERIFY( callWithContact2.mDefaultCall == LogsCall::TypeLogsVoiceCall );
    67     QVERIFY( callWithContact2.mDefaultCall == LogsCall::TypeLogsVoiceCall );
    63     QVERIFY( callWithContact2.mNumber == "user@server.com" );
    68     QVERIFY( callWithContact2.mNumber == "user@server.com" );
    64     
    69     QCOMPARE( callWithContact2.mContactId, (unsigned int)2 );
    65     LogsCall callWithContact3(2, "" );
    70     
       
    71     LogsCall callWithContact3(3, "" );
    66     QVERIFY( callWithContact3.mDefaultCall == LogsCall::TypeLogsCallNotAvailable );
    72     QVERIFY( callWithContact3.mDefaultCall == LogsCall::TypeLogsCallNotAvailable );
    67     QVERIFY( callWithContact3.mNumber.isEmpty() );
    73     QVERIFY( callWithContact3.mNumber.isEmpty() );
       
    74     QCOMPARE( callWithContact3.mContactId, (unsigned int)3 );
    68 }
    75 }
    69 
    76 
    70 void UT_LogsCall::testallowedCallTypes()
    77 void UT_LogsCall::testallowedCallTypes()
    71 {
    78 {
    72     LogsEvent event;
    79     LogsEvent event;
    91     LogsEventData* eventData2 = new LogsEventData;
    98     LogsEventData* eventData2 = new LogsEventData;
    92     eventData2->mRemoteUrl = "test@1.2.3.4";
    99     eventData2->mRemoteUrl = "test@1.2.3.4";
    93     event.setLogsEventData( eventData2 );
   100     event.setLogsEventData( eventData2 );
    94     LogsCall call4(event);
   101     LogsCall call4(event);
    95     QVERIFY(call4.allowedCallTypes().count() == 1);
   102     QVERIFY(call4.allowedCallTypes().count() == 1);
       
   103     
       
   104     // Event without number
       
   105     LogsEvent event2;
       
   106     event2.setEventType(LogsEvent::TypeVoiceCall);
       
   107     LogsCall call5(event2);
       
   108     QVERIFY(call5.allowedCallTypes().count() == 0);
       
   109     QVERIFY(call5.mDefaultCall == LogsCall::TypeLogsCallNotAvailable);
    96 }
   110 }
    97 
   111 
    98 void UT_LogsCall::testisAllowedCallType()
   112 void UT_LogsCall::testisAllowedCallType()
    99 {
   113 {
   100 	QVERIFY(mLogsCall->isAllowedCallType());
   114 	QVERIFY(mLogsCall->isAllowedCallType());
   117 
   131 
   118 void UT_LogsCall::testCall()
   132 void UT_LogsCall::testCall()
   119 {  
   133 {  
   120     QtHighwayStubHelper::reset();
   134     QtHighwayStubHelper::reset();
   121     mLogsCall->call(LogsCall::TypeLogsVoiceCall);
   135     mLogsCall->call(LogsCall::TypeLogsVoiceCall);
   122     QVERIFY( QtHighwayStubHelper::service() == "com.nokia.symbian.ICallDial" );
   136     QVERIFY( QtHighwayStubHelper::service() == logsICallDial );
   123     QVERIFY( QtHighwayStubHelper::message() == "dial(QString)" );
   137     QVERIFY( QtHighwayStubHelper::message() == "dial(QString)" );
   124     QVERIFY( QtHighwayStubHelper::isRequestBg() );
   138     QVERIFY( QtHighwayStubHelper::isRequestBg() );
   125     
   139     
   126     // Video call message is longer than voice call
       
   127     QtHighwayStubHelper::reset();
   140     QtHighwayStubHelper::reset();
   128     mLogsCall->call(LogsCall::TypeLogsVideoCall);
   141     mLogsCall->call(LogsCall::TypeLogsVideoCall);
   129     QVERIFY( QtHighwayStubHelper::service() == "com.nokia.symbian.ICallDial" );
   142     QVERIFY( QtHighwayStubHelper::service() == logsICallDial );
   130     QVERIFY( QtHighwayStubHelper::message() == "dialVideo(QString)" );
   143     QVERIFY( QtHighwayStubHelper::message() == "dialVideo(QString)" );
   131     QVERIFY( QtHighwayStubHelper::isRequestBg() );
   144     QVERIFY( QtHighwayStubHelper::isRequestBg() );
   132 
   145 
   133     QtHighwayStubHelper::reset();
   146     QtHighwayStubHelper::reset();
   134     mLogsCall->mServiceId = 3;
   147     mLogsCall->mServiceId = 3;
   135     mLogsCall->call(LogsCall::TypeLogsVoIPCall);
   148     mLogsCall->call(LogsCall::TypeLogsVoIPCall);
   136     QVERIFY( QtHighwayStubHelper::service() == "com.nokia.symbian.ICallDial" );
   149     QVERIFY( QtHighwayStubHelper::service() == logsICallDial );
   137     QVERIFY( QtHighwayStubHelper::message() == "dialVoipService(QString,int)" ); 
   150     QVERIFY( QtHighwayStubHelper::message() == "dialVoipService(QString,int)" ); 
   138     QVERIFY( QtHighwayStubHelper::isRequestBg() );
   151     QVERIFY( QtHighwayStubHelper::isRequestBg() );
   139     
   152     
   140     // Not supported calltype
   153     // Not supported calltype
   141     QtHighwayStubHelper::reset();
   154     QtHighwayStubHelper::reset();
   142     mLogsCall->call(static_cast<LogsCall::CallType>(9999));
   155     mLogsCall->call(static_cast<LogsCall::CallType>(9999));
   143     QVERIFY( QtHighwayStubHelper::service().isEmpty() );
   156     QVERIFY( QtHighwayStubHelper::service().isEmpty() );
   144     QVERIFY( QtHighwayStubHelper::message().isEmpty() );
   157     QVERIFY( QtHighwayStubHelper::message().isEmpty() );
   145     QVERIFY( !QtHighwayStubHelper::isRequestBg() );
   158     QVERIFY( !QtHighwayStubHelper::isRequestBg() );
       
   159     
       
   160     // No number, call is anyway tried so that phone shows error note
       
   161     QtHighwayStubHelper::reset();
       
   162     HbStubHelper::reset();
       
   163     mLogsCall->mNumber.clear();
       
   164     mLogsCall->call(LogsCall::TypeLogsVoiceCall);
       
   165     QVERIFY( QtHighwayStubHelper::service() == logsICallDial );
       
   166     QVERIFY( QtHighwayStubHelper::message() == "dial(QString)" );
       
   167     QVERIFY( QtHighwayStubHelper::isRequestBg() );
       
   168     QVERIFY( HbStubHelper::notificationDialogTxt().isEmpty() );
       
   169     
       
   170     // No number for contact call, specific error note is shown
       
   171     QtHighwayStubHelper::reset();
       
   172     HbStubHelper::reset();
       
   173     mLogsCall->mContactId = 5;
       
   174     mLogsCall->call(LogsCall::TypeLogsVoiceCall);
       
   175     QVERIFY( QtHighwayStubHelper::service().isEmpty() );
       
   176     QVERIFY( QtHighwayStubHelper::message().isEmpty() );
       
   177     QVERIFY( HbStubHelper::notificationDialogTxt() == hbTrId("txt_dial_dpopinfo_no_saved_number_for_this_contact") );
   146 }
   178 }
   147 
   179 
   148 void UT_LogsCall::testInitiateCallback()
   180 void UT_LogsCall::testInitiateCallback()
   149 {
   181 {
   150     QtHighwayStubHelper::reset();
   182     QtHighwayStubHelper::reset();
   151     mLogsCall->initiateCallback();
   183     mLogsCall->initiateCallback();
   152     QVERIFY( QtHighwayStubHelper::service() == "com.nokia.symbian.ICallDial" );
   184     QVERIFY( QtHighwayStubHelper::service() == logsICallDial );
   153     QVERIFY( QtHighwayStubHelper::message() == "dial(QString)" );
   185     QVERIFY( QtHighwayStubHelper::message() == "dial(QString)" );
   154     QVERIFY( QtHighwayStubHelper::isRequestBg() );
   186     QVERIFY( QtHighwayStubHelper::isRequestBg() );
   155     
   187     
   156     // Video call message is longer than voice call
       
   157     mLogsCall->mDefaultCall = LogsCall::TypeLogsVideoCall;
   188     mLogsCall->mDefaultCall = LogsCall::TypeLogsVideoCall;
   158     QtHighwayStubHelper::reset();
   189     QtHighwayStubHelper::reset();
   159     mLogsCall->initiateCallback();
   190     mLogsCall->initiateCallback();
   160     QVERIFY( QtHighwayStubHelper::service() == "com.nokia.symbian.ICallDial" );
   191     QVERIFY( QtHighwayStubHelper::service() == logsICallDial );
   161     QVERIFY( QtHighwayStubHelper::message() == "dialVideo(QString)" );
   192     QVERIFY( QtHighwayStubHelper::message() == "dialVideo(QString)" );
   162     QVERIFY( QtHighwayStubHelper::isRequestBg() );
   193     QVERIFY( QtHighwayStubHelper::isRequestBg() );
   163     
   194     
   164     mLogsCall->mDefaultCall = LogsCall::TypeLogsVoIPCall;
   195     mLogsCall->mDefaultCall = LogsCall::TypeLogsVoIPCall;
   165     QtHighwayStubHelper::reset();
   196     QtHighwayStubHelper::reset();
   166     mLogsCall->mServiceId = 3;
   197     mLogsCall->mServiceId = 3;
   167     mLogsCall->initiateCallback();
   198     mLogsCall->initiateCallback();
   168     QVERIFY( QtHighwayStubHelper::service() == "com.nokia.symbian.ICallDial" );
   199     QVERIFY( QtHighwayStubHelper::service() == logsICallDial );
   169     QVERIFY( QtHighwayStubHelper::message() == "dialVoipService(QString,int)" );  
   200     QVERIFY( QtHighwayStubHelper::message() == "dialVoipService(QString,int)" );  
   170     QVERIFY( QtHighwayStubHelper::isRequestBg() );
   201     QVERIFY( QtHighwayStubHelper::isRequestBg() );
   171 }
   202 }