From 19d8d0443bed987a997f486c70ffb9ad62bc1419 Mon Sep 17 00:00:00 2001 From: Paul Lemire Date: Thu, 3 Dec 2015 10:58:46 +0100 Subject: QAxisInput/QActionInput: use list of int rather than int mask Needed to allow devices like keyboards which have more than 64 keys Change-Id: Ia837285ba9c5b7c26d3d89046d7d9f7a4cddb2ba Reviewed-by: Sean Harmer --- tests/auto/input/axisinput/tst_axisinput.cpp | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) (limited to 'tests/auto/input/axisinput/tst_axisinput.cpp') diff --git a/tests/auto/input/axisinput/tst_axisinput.cpp b/tests/auto/input/axisinput/tst_axisinput.cpp index f63c3d445..1b1879443 100644 --- a/tests/auto/input/axisinput/tst_axisinput.cpp +++ b/tests/auto/input/axisinput/tst_axisinput.cpp @@ -43,6 +43,18 @@ #include #include "testdevice.h" +namespace { + +void compareKeys(const QVector &backendKeys, const QVariantList &frontendKeys) +{ + QCOMPARE(backendKeys.size(), frontendKeys.size()); + for (int i = 0, m = backendKeys.size(); i < m; ++i) { + QCOMPARE(backendKeys.at(i), frontendKeys.at(i).toInt()); + } +} + +} + class tst_AxisInput: public QObject { Q_OBJECT @@ -56,7 +68,7 @@ private Q_SLOTS: Qt3DInput::QAxisInput axisInput; TestDevice sourceDevice; - axisInput.setKeys((1 << 8)); + axisInput.setKeys(QVariantList() << QVariant(1 << 8)); axisInput.setAxis(327); axisInput.setScale(0.5f); axisInput.setSourceDevice(&sourceDevice); @@ -67,7 +79,7 @@ private Q_SLOTS: // THEN QCOMPARE(backendAxisInput.peerUuid(), axisInput.id()); QCOMPARE(backendAxisInput.isEnabled(), axisInput.isEnabled()); - QCOMPARE(backendAxisInput.keys(), axisInput.keys()); + compareKeys(backendAxisInput.keys(), axisInput.keys()); QCOMPARE(backendAxisInput.axis(), axisInput.axis()); QCOMPARE(backendAxisInput.scale(), axisInput.scale()); QCOMPARE(backendAxisInput.sourceDevice(), sourceDevice.id()); @@ -81,7 +93,7 @@ private Q_SLOTS: // THEN QVERIFY(backendAxisInput.peerUuid().isNull()); QCOMPARE(backendAxisInput.scale(), 0.0f); - QCOMPARE(backendAxisInput.keys(), 0); + QVERIFY(backendAxisInput.keys().isEmpty()); QCOMPARE(backendAxisInput.axis(), 0); QCOMPARE(backendAxisInput.isEnabled(), false); QCOMPARE(backendAxisInput.sourceDevice(), Qt3DCore::QNodeId()); @@ -90,7 +102,7 @@ private Q_SLOTS: Qt3DInput::QAxisInput axisInput; TestDevice sourceDevice; - axisInput.setKeys((1 << 8)); + axisInput.setKeys(QVariantList() << QVariant(1 << 8)); axisInput.setAxis(327); axisInput.setScale(0.5f); axisInput.setSourceDevice(&sourceDevice); @@ -102,7 +114,7 @@ private Q_SLOTS: // THEN QVERIFY(backendAxisInput.peerUuid().isNull()); QCOMPARE(backendAxisInput.scale(), 0.0f); - QCOMPARE(backendAxisInput.keys(), 0); + QVERIFY(backendAxisInput.keys().isEmpty()); QCOMPARE(backendAxisInput.axis(), 0); QCOMPARE(backendAxisInput.isEnabled(), false); QCOMPARE(backendAxisInput.sourceDevice(), Qt3DCore::QNodeId()); @@ -124,12 +136,12 @@ private Q_SLOTS: // WHEN updateChange.reset(new Qt3DCore::QScenePropertyChange(Qt3DCore::NodeUpdated, Qt3DCore::QSceneChange::Node, Qt3DCore::QNodeId())); - updateChange->setValue(64); + updateChange->setValue(QVariantList() << QVariant(64)); updateChange->setPropertyName("keys"); backendAxisInput.sceneChangeEvent(updateChange); // THEN - QCOMPARE(backendAxisInput.keys(), 64); + compareKeys(backendAxisInput.keys(), QVariantList() << QVariant(64)); // WHEN updateChange.reset(new Qt3DCore::QScenePropertyChange(Qt3DCore::NodeUpdated, Qt3DCore::QSceneChange::Node, Qt3DCore::QNodeId())); -- cgit v1.2.3