summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorMike Krus <mike.krus@kdab.com>2017-12-21 09:32:41 +0000
committerPaul Lemire <paul.lemire@kdab.com>2017-12-24 11:34:18 +0000
commit1d5f8b8536c1b0165c2292529dc3814e96bb0a27 (patch)
treec1ba84208e326348ef40e98e2713febfbaccb559 /tests
parent02b4a7047b711d4ee729bcd982a5b624f343dbdd (diff)
Add test for QPickEvent private data
QPickEvent carries the id of the picked object in the private pimpl. This was previously broken (breaking Scene2D) so adding a test to check it doesn't get dropped in the future Change-Id: Ic19db84877458329a2e98713805d7294fb2b7185 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/render/pickboundingvolumejob/tst_pickboundingvolumejob.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/tests/auto/render/pickboundingvolumejob/tst_pickboundingvolumejob.cpp b/tests/auto/render/pickboundingvolumejob/tst_pickboundingvolumejob.cpp
index d9d90a03d..a14bccefc 100644
--- a/tests/auto/render/pickboundingvolumejob/tst_pickboundingvolumejob.cpp
+++ b/tests/auto/render/pickboundingvolumejob/tst_pickboundingvolumejob.cpp
@@ -57,6 +57,8 @@
#include <Qt3DRender/private/buffermanager_p.h>
#include <Qt3DRender/private/geometryrenderermanager_p.h>
+#include <private/qpickevent_p.h>
+
QT_BEGIN_NAMESPACE
namespace Qt3DRender {
@@ -775,6 +777,7 @@ private Q_SLOTS:
QCOMPARE(change->propertyName(), "pressed");
Qt3DRender::QPickEventPtr pickEvent = change->value().value<Qt3DRender::QPickEventPtr>();
QVERIFY(pickEvent);
+ QVERIFY(!Qt3DRender::QPickEventPrivate::get(pickEvent.data())->m_entity.isNull());
if (pickMethod == Qt3DRender::QPickingSettings::TrianglePicking)
QVERIFY(pickEvent.dynamicCast<Qt3DRender::QPickTriangleEvent>());
@@ -794,6 +797,7 @@ private Q_SLOTS:
QCOMPARE(change->propertyName(), "moved");
pickEvent = change->value().value<Qt3DRender::QPickEventPtr>();
QVERIFY(pickEvent);
+ QVERIFY(!Qt3DRender::QPickEventPrivate::get(pickEvent.data())->m_entity.isNull());
if (pickMethod == Qt3DRender::QPickingSettings::TrianglePicking)
QVERIFY(pickEvent.dynamicCast<Qt3DRender::QPickTriangleEvent>());
@@ -813,12 +817,14 @@ private Q_SLOTS:
QCOMPARE(change->propertyName(), "released");
pickEvent = change->value().value<Qt3DRender::QPickEventPtr>();
QVERIFY(pickEvent);
+ QVERIFY(!Qt3DRender::QPickEventPrivate::get(pickEvent.data())->m_entity.isNull());
if (pickMethod == Qt3DRender::QPickingSettings::TrianglePicking)
QVERIFY(pickEvent.dynamicCast<Qt3DRender::QPickTriangleEvent>());
change = arbiter.events.last().staticCast<Qt3DCore::QPropertyUpdatedChange>();
QCOMPARE(change->propertyName(), "clicked");
pickEvent = change->value().value<Qt3DRender::QPickEventPtr>();
QVERIFY(pickEvent);
+ QVERIFY(!Qt3DRender::QPickEventPrivate::get(pickEvent.data())->m_entity.isNull());
if (pickMethod == Qt3DRender::QPickingSettings::TrianglePicking)
QVERIFY(pickEvent.dynamicCast<Qt3DRender::QPickTriangleEvent>());