phoneuis/bubblemanager2/tsrc/unit/ut_bubblecontainerwidget/ut_bubblecontainerwidget.cpp
--- a/phoneuis/bubblemanager2/tsrc/unit/ut_bubblecontainerwidget/ut_bubblecontainerwidget.cpp Tue Jun 15 14:14:38 2010 +0100
+++ b/phoneuis/bubblemanager2/tsrc/unit/ut_bubblecontainerwidget/ut_bubblecontainerwidget.cpp Thu Jul 22 16:33:21 2010 +0100
@@ -24,10 +24,21 @@
#include <hbmainwindow.h>
#include <hbinstance.h>
#include <hbstyle.h>
+#include <hbframeitem.h>
#include "bubbletest.h"
#include "bubblecontainerwidget.h"
+class TestBubbleContainerWidget : public BubbleContainerWidget
+{
+public:
+ TestBubbleContainerWidget() {};
+ ~TestBubbleContainerWidget() {};
+
+ void testMouseMove(QGraphicsSceneMouseEvent *event)
+ { BubbleContainerWidget::mouseMoveEvent(event); };
+};
+
class ut_BubbleContainerWidget : public QObject
{
Q_OBJECT
@@ -41,17 +52,22 @@
void testMouseMove();
private:
- BubbleContainerWidget* mContainer;
+ TestBubbleContainerWidget* mContainer;
HbMainWindow* mMainWindow;
- int mStyleBaseId;
};
void ut_BubbleContainerWidget::initTestCase()
{
mMainWindow = new HbMainWindow();
- mContainer = new BubbleContainerWidget();
+ mContainer = new TestBubbleContainerWidget();
mMainWindow->addView(mContainer);
mMainWindow->show();
+
+ HbFrameItem* frame =
+ qgraphicsitem_cast<HbFrameItem*>(
+ static_cast<HbWidget*>(mContainer)->primitive("background"));
+ QVERIFY(frame->frameDrawer().frameGraphicsName()=="qtg_fr_list_normal");
+ QVERIFY(frame->isVisible()==false);
}
void ut_BubbleContainerWidget::cleanupTestCase()
@@ -90,11 +106,36 @@
QPointF clickPos = mContainer->scenePos() +
mContainer->rect().center();
QPoint windowPos = mMainWindow->mapFromScene( clickPos );
- QPoint windowPos2 = windowPos+QPoint(10,10);
+
+ // move within
+ QTest::mousePress( mMainWindow->viewport(), Qt::LeftButton, 0, windowPos, 100 );
// QTest::mouseMove() doesn't work
- QTest::mouseMove( mMainWindow->viewport(), windowPos2 );
- QCOMPARE( spy.count(), 0 );
+ QGraphicsSceneMouseEvent moveEvent(QEvent::MouseMove);
+ moveEvent.setButtons(Qt::LeftButton);
+ moveEvent.setPos(windowPos-QPointF(1,1));
+ mContainer->testMouseMove(&moveEvent);
+
+ QTest::mouseRelease( mMainWindow->viewport(), Qt::LeftButton, 0, windowPos, 100 );
+ QCOMPARE( spy.count(), 1 );
+
+
+ // move out
+ QTest::mousePress( mMainWindow->viewport(), Qt::LeftButton, 0, windowPos, 100 );
+ moveEvent.setPos(QPointF(-10,-10));
+ mContainer->testMouseMove(&moveEvent);
+
+ QTest::mouseRelease( mMainWindow->viewport(), Qt::LeftButton, 0, windowPos, 100 );
+ QCOMPARE( spy.count(), 1 );
+
+ // move in
+ QTest::mousePress( mMainWindow->viewport(), Qt::LeftButton, 0, QPoint(1,1), 100 );
+ moveEvent.setPos(QPointF(windowPos));
+ mContainer->testMouseMove(&moveEvent);
+
+ QTest::mouseRelease( mMainWindow->viewport(), Qt::LeftButton, 0, windowPos, 100 );
+ QCOMPARE( spy.count(), 1 );
+
}
BUBBLE_TEST_MAIN(ut_BubbleContainerWidget)