diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2015-12-03 10:58:46 +0100 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2015-12-04 19:07:41 +0000 |
commit | 19d8d0443bed987a997f486c70ffb9ad62bc1419 (patch) | |
tree | 8d02f1f32f92f7c15fafe1a97eef02dbb46424a8 /tests | |
parent | c9961da49757b5d76164a5334ed1f114fffcfca0 (diff) |
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 <sean.harmer@kdab.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/input/axisinput/tst_axisinput.cpp | 26 | ||||
-rw-r--r-- | tests/auto/input/qactioninput/tst_qactioninput.cpp | 9 | ||||
-rw-r--r-- | tests/auto/input/qaxisinput/tst_qaxisinput.cpp | 9 |
3 files changed, 29 insertions, 15 deletions
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 <Qt3DCore/qscenepropertychange.h> #include "testdevice.h" +namespace { + +void compareKeys(const QVector<int> &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())); diff --git a/tests/auto/input/qactioninput/tst_qactioninput.cpp b/tests/auto/input/qactioninput/tst_qactioninput.cpp index 3b8022860..77275c2cb 100644 --- a/tests/auto/input/qactioninput/tst_qactioninput.cpp +++ b/tests/auto/input/qactioninput/tst_qactioninput.cpp @@ -69,12 +69,12 @@ private Q_SLOTS: QTest::newRow("defaultConstructed") << defaultConstructed; Qt3DInput::QActionInput *actionInputWithKeys = new Qt3DInput::QActionInput(); - actionInputWithKeys->setKeys((1 << 1) | (1 << 5)); + actionInputWithKeys->setKeys(QVariantList() << QVariant((1 << 1) | (1 << 5))); QTest::newRow("actionInputWithKeys") << actionInputWithKeys; Qt3DInput::QActionInput *actionInputWithKeysAndSourceDevice = new Qt3DInput::QActionInput(); TestDevice *device = new TestDevice(); - actionInputWithKeysAndSourceDevice->setKeys((1 << 1) | (1 << 5)); + actionInputWithKeysAndSourceDevice->setKeys(QVariantList() << QVariant((1 << 1) | (1 << 5))); actionInputWithKeysAndSourceDevice->setSourceDevice(device); QTest::newRow("actionInputWithKeysAndSourceDevice") << actionInputWithKeysAndSourceDevice; } @@ -106,14 +106,15 @@ private Q_SLOTS: TestArbiter arbiter(actionInput.data()); // WHEN - actionInput->setKeys(555); + QVariantList keys = QVariantList() << QVariant(555); + actionInput->setKeys(keys); QCoreApplication::processEvents(); // THEN QCOMPARE(arbiter.events.size(), 1); Qt3DCore::QScenePropertyChangePtr change = arbiter.events.first().staticCast<Qt3DCore::QScenePropertyChange>(); QCOMPARE(change->propertyName(), "keys"); - QCOMPARE(change->value().toInt(), 555); + QCOMPARE(change->value().toList(), keys); QCOMPARE(change->type(), Qt3DCore::NodeUpdated); arbiter.events.clear(); diff --git a/tests/auto/input/qaxisinput/tst_qaxisinput.cpp b/tests/auto/input/qaxisinput/tst_qaxisinput.cpp index ec65824e9..2dc7e3308 100644 --- a/tests/auto/input/qaxisinput/tst_qaxisinput.cpp +++ b/tests/auto/input/qaxisinput/tst_qaxisinput.cpp @@ -69,14 +69,14 @@ private Q_SLOTS: QTest::newRow("defaultConstructed") << defaultConstructed; Qt3DInput::QAxisInput *axisInputWithKeysAndAxis = new Qt3DInput::QAxisInput(); - axisInputWithKeysAndAxis->setKeys((1 << 1) | (1 << 5)); + axisInputWithKeysAndAxis->setKeys(QVariantList() << QVariant((1 << 1) | (1 << 5))); axisInputWithKeysAndAxis->setAxis(383); axisInputWithKeysAndAxis->setScale(327.0f); QTest::newRow("axisInputWithKeys") << axisInputWithKeysAndAxis; Qt3DInput::QAxisInput *axisInputWithKeysAndSourceDevice = new Qt3DInput::QAxisInput(); TestDevice *device = new TestDevice(); - axisInputWithKeysAndSourceDevice->setKeys((1 << 1) | (1 << 5)); + axisInputWithKeysAndSourceDevice->setKeys(QVariantList() << QVariant((1 << 1) | (1 << 5))); axisInputWithKeysAndSourceDevice->setSourceDevice(device); axisInputWithKeysAndSourceDevice->setAxis(427); axisInputWithKeysAndAxis->setScale(355.0f); @@ -112,14 +112,15 @@ private Q_SLOTS: TestArbiter arbiter(axisInput.data()); // WHEN - axisInput->setKeys(555); + QVariantList keys = QVariantList() << QVariant(555); + axisInput->setKeys(keys); QCoreApplication::processEvents(); // THEN QCOMPARE(arbiter.events.size(), 1); Qt3DCore::QScenePropertyChangePtr change = arbiter.events.first().staticCast<Qt3DCore::QScenePropertyChange>(); QCOMPARE(change->propertyName(), "keys"); - QCOMPARE(change->value().toInt(), 555); + QCOMPARE(change->value().toList(), keys); QCOMPARE(change->type(), Qt3DCore::NodeUpdated); arbiter.events.clear(); |