logsui/logsengine/tsrc/ut_logsengine/src/ut_logsdetailsmodel.cpp
changeset 18 acd4e87b24b4
parent 15 76d2cf7a585e
child 21 2f0af9ba7665
equal deleted inserted replaced
17:90fe74753f71 18:acd4e87b24b4
    79 }
    79 }
    80 
    80 
    81 void UT_LogsDetailsModel::testConstructor()
    81 void UT_LogsDetailsModel::testConstructor()
    82 {
    82 {
    83     QVERIFY( mModel );
    83     QVERIFY( mModel );
       
    84     QVERIFY( mModel->mSeparatorCollapsed );
       
    85     QVERIFY( mModel->mSeparatorIndex == -1 );
    84 }
    86 }
    85 
    87 
    86 void UT_LogsDetailsModel::testRowCount()
    88 void UT_LogsDetailsModel::testRowCount()
    87 {
    89 {
       
    90     // No expandable item for duplicate events
       
    91     QVERIFY( mModel->mSeparatorIndex == -1 );
       
    92     QVERIFY( mModel->rowCount(QModelIndex()) == 5 );
       
    93     
       
    94     // Expandable item is collapsed
       
    95     mModel->mSeparatorIndex = 1;
       
    96     QVERIFY( mModel->rowCount(QModelIndex()) == 2 );
       
    97     
       
    98     // Expandable item is expanded
       
    99     mModel->mSeparatorCollapsed = false;
    88     QVERIFY( mModel->rowCount(QModelIndex()) == 5 );
   100     QVERIFY( mModel->rowCount(QModelIndex()) == 5 );
    89 }
   101 }
    90 
   102 
    91 void UT_LogsDetailsModel::testgetNumberToClipboard()
   103 void UT_LogsDetailsModel::testgetNumberToClipboard()
    92 {
   104 {
   200     delete contact;
   212     delete contact;
   201     
   213     
   202     // Contact not supported
   214     // Contact not supported
   203     mModel->mEvent->setNumber("");
   215     mModel->mEvent->setNumber("");
   204     mModel->mEvent->setLogsEventData( 0 );
   216     mModel->mEvent->setLogsEventData( 0 );
   205     contactData = mModel->data(mModel->index(0), LogsModel::RoleContact);
   217     contactData = mModel->data(mModel->index(0), LogsDetailsModel::RoleContact);
   206     contact = qVariantValue<LogsContact *>( contactData );
   218     contact = qVariantValue<LogsContact *>( contactData );
   207     QVERIFY( !contact );
   219     QVERIFY( !contact );
       
   220     
       
   221     // Expandable separator item
       
   222     mModel->mSeparatorIndex = 1;
       
   223     QVariant groupbox = mModel->data(mModel->index(0), LogsDetailsModel::RoleDuplicatesSeparator);
       
   224     QVERIFY( groupbox.isValid() && !groupbox.toBool() );
       
   225     groupbox = mModel->data(mModel->index(1), LogsDetailsModel::RoleDuplicatesSeparator);
       
   226     QVERIFY( groupbox.isValid() && groupbox.toBool() );
   208 }
   227 }
   209 
   228 
   210 void UT_LogsDetailsModel::testHeaderData()
   229 void UT_LogsDetailsModel::testHeaderData()
   211 {
   230 {
   212     QCOMPARE(mModel->headerData(0, Qt::Vertical).toString(),
   231     QCOMPARE(mModel->headerData(0, Qt::Vertical).toString(),
   371     QSignalSpy spy( model, SIGNAL(modelReset()) );
   390     QSignalSpy spy( model, SIGNAL(modelReset()) );
   372     LogsEvent* dup1 = new LogsEvent;
   391     LogsEvent* dup1 = new LogsEvent;
   373     model->mDbConnector->mDuplicatedEvents.append(dup1);
   392     model->mDbConnector->mDuplicatedEvents.append(dup1);
   374     LogsEvent* dup2 = new LogsEvent;
   393     LogsEvent* dup2 = new LogsEvent;
   375     model->mDbConnector->mDuplicatedEvents.append(dup2);
   394     model->mDbConnector->mDuplicatedEvents.append(dup2);
       
   395     mModel->mSeparatorCollapsed = false;
   376     model->duplicatesRead();
   396     model->duplicatesRead();
   377     QVERIFY(model->mDetailIcons.count() == 6);
   397     QVERIFY(model->mDetailIcons.count() == 7);
   378     QVERIFY(model->mDetailTexts.count() == 6);
   398     QVERIFY(model->mDetailTexts.count() == 7);
   379     // When having multiple date and time items, first item has different heading than others
   399     // When having multiple date and time items, first item has different heading than others
   380     QVERIFY( model->mDetailTexts.at(1).at(0) != dateAndTimeRowHeading );
   400     QVERIFY( model->mDetailTexts.at(1).at(0) != dateAndTimeRowHeading );
   381     QVERIFY( model->mDetailTexts.at(5).at(0) == dateAndTimeRowHeading );
   401     QVERIFY( model->mDetailTexts.at(6).at(0) == dateAndTimeRowHeading );
   382     delete model;
   402     delete model;
   383     model = 0;
   403     model = 0;
   384     
   404     
   385 }
   405 }
   386 
   406 
   499     params.setLocaleChanged(true);
   519     params.setLocaleChanged(true);
   500     mModel->mEvent->setRemoteParty("");
   520     mModel->mEvent->setRemoteParty("");
   501     QVERIFY( mModel->updateConfiguration(params) == 0 );
   521     QVERIFY( mModel->updateConfiguration(params) == 0 );
   502     QCOMPARE( mModel->mDetailTexts.count(), 4 );
   522     QCOMPARE( mModel->mDetailTexts.count(), 4 );
   503 }
   523 }
       
   524 
       
   525 void UT_LogsDetailsModel::testSetData()
       
   526 {
       
   527     const int separatorIdx = 2;
       
   528     mModel->mSeparatorCollapsed = false;
       
   529     mModel->mSeparatorIndex = separatorIdx;
       
   530     
       
   531     // Collapsing duplicates ok
       
   532     QVERIFY( mModel->rowCount(QModelIndex()) == 5 );
       
   533     mModel->setData( mModel->index(separatorIdx), QVariant(true) );
       
   534     QVERIFY( mModel->rowCount(QModelIndex()) == 3 );
       
   535     QVERIFY( mModel->mSeparatorCollapsed );
       
   536     
       
   537     // Expanding fails, wrong separator index 
       
   538     mModel->setData( mModel->index(separatorIdx+2), QVariant(false) );
       
   539     QVERIFY( mModel->rowCount(QModelIndex()) == 3 );
       
   540     QVERIFY( mModel->mSeparatorCollapsed );
       
   541 
       
   542     // Expanding fails, invalid data 
       
   543     mModel->setData( mModel->index(separatorIdx), QVariant() );
       
   544     QVERIFY( mModel->rowCount(QModelIndex()) == 3 );
       
   545     QVERIFY( mModel->mSeparatorCollapsed );
       
   546 
       
   547     // Collapsing fails, already collapsed
       
   548     mModel->setData( mModel->index(separatorIdx), QVariant(true) );
       
   549     QVERIFY( mModel->rowCount(QModelIndex()) == 3 );
       
   550     QVERIFY( mModel->mSeparatorCollapsed );
       
   551         
       
   552     // Expanding ok
       
   553     mModel->setData( mModel->index(separatorIdx), QVariant(false) );
       
   554     QVERIFY( mModel->rowCount(QModelIndex()) == 5 );
       
   555     QVERIFY( !mModel->mSeparatorCollapsed );
       
   556 }