logsui/logsapp/tsrc/ut_logsapp/src/ut_logsdetailsview.cpp
changeset 20 6a40edd41841
parent 19 e4c884866116
child 21 2f0af9ba7665
--- a/logsui/logsapp/tsrc/ut_logsapp/src/ut_logsdetailsview.cpp	Fri Sep 17 08:29:34 2010 +0300
+++ b/logsui/logsapp/tsrc/ut_logsapp/src/ut_logsdetailsview.cpp	Mon Oct 04 00:17:41 2010 +0300
@@ -37,6 +37,7 @@
 #include <hbgroupbox.h>
 #include <dialpad.h>
 #include <hbmessagebox.h>
+#include <QGraphicsLinearLayout>
 
 Q_DECLARE_METATYPE(LogsDetailsModel *)
 
@@ -412,3 +413,38 @@
     QVERIFY( model != 0 );
     delete model;
 }
+
+
+void UT_LogsDetailsView::testUpdateChildItems()
+{
+    HbListView list;
+    LogsDetailsModel* model = new LogsDetailsModel();
+    list.setModel( model, new LogsDetailsViewItem());
+
+    model->mDetailItemsCount = 5;
+    QEvent* event = new QEvent(QEvent::GraphicsSceneResize);
+    qApp->sendEvent(&list, event); //will create list items and call updateChildItems()
+    
+    // No separator item
+    LogsDetailsViewItem* item = static_cast<LogsDetailsViewItem*>(list.viewItem(0));    
+    QVERIFY(item);
+    QVERIFY( !item->mLayout );
+    
+    // Separator item updated OK
+    model->mSeparatorIndex = 0;
+    item->updateChildItems();
+    QVERIFY( item->mLayout );
+    QCOMPARE( item->mLayout->count(), 1 );
+    QGraphicsLayoutItem* layoutItem = item->mLayout->itemAt(0);
+    QVERIFY( static_cast<HbGroupBox*>(layoutItem) );
+
+    // Testing groupBoxClicked()
+    QVERIFY( model->mSeparatorCollapsed );
+    item->groupBoxClicked(false);
+    QVERIFY( !model->mSeparatorCollapsed );
+    
+    
+    list.setModel(0);
+    delete model;
+}
+