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 } |