diff options
author | Kevin Ottens <kevin.ottens@kdab.com> | 2016-10-06 20:48:01 +0200 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2016-10-29 11:31:37 +0000 |
commit | de3c46a1b494f881626be2d7d48239dcb9f5fd7a (patch) | |
tree | a5f63a3333101eda638696167c7009cb95da506a /tests/auto/input | |
parent | 94f09de4c17630be14ad27dd3c9d96fc40b86206 (diff) |
AnalogAxisInput shouldn't process when disabled
Change-Id: I1ad3e0f77b27b9309e879e7171512845e7a3eac9
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'tests/auto/input')
-rw-r--r-- | tests/auto/input/analogaxisinput/tst_analogaxisinput.cpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/auto/input/analogaxisinput/tst_analogaxisinput.cpp b/tests/auto/input/analogaxisinput/tst_analogaxisinput.cpp index 374cf2dd5..faa7385bc 100644 --- a/tests/auto/input/analogaxisinput/tst_analogaxisinput.cpp +++ b/tests/auto/input/analogaxisinput/tst_analogaxisinput.cpp @@ -139,6 +139,7 @@ private Q_SLOTS: Qt3DInput::Input::AnalogAxisInput backendAxisInput; Qt3DInput::QAnalogAxisInput axisInput; + axisInput.setEnabled(true); axisInput.setAxis(2); axisInput.setSourceDevice(device); simulateInitialization(&axisInput, &backendAxisInput); @@ -158,6 +159,40 @@ private Q_SLOTS: QCOMPARE(backendAxisInput.process(&handler, 32 * s), 0.2f); QCOMPARE(backendAxisInput.process(&handler, 33 * s), 0.2f); } + + void shouldNotProcessAxisValueWhenDisabled() + { + const qint64 s = 1000000000; + + // GIVEN + TestDeviceIntegration deviceIntegration; + TestDevice *device = deviceIntegration.createPhysicalDevice("keyboard"); + TestDeviceBackendNode *deviceBackend = deviceIntegration.physicalDevice(device->id()); + Qt3DInput::Input::InputHandler handler; + handler.addInputDeviceIntegration(&deviceIntegration); + + Qt3DInput::Input::AnalogAxisInput backendAxisInput; + Qt3DInput::QAnalogAxisInput axisInput; + axisInput.setEnabled(false); + axisInput.setAxis(2); + axisInput.setSourceDevice(device); + simulateInitialization(&axisInput, &backendAxisInput); + QCOMPARE(backendAxisInput.axis(), 2); + + // WHEN + deviceBackend->setAxisValue(2, 0.1f); + + // THEN + QCOMPARE(backendAxisInput.process(&handler, 30 * s), 0.0f); + QCOMPARE(backendAxisInput.process(&handler, 31 * s), 0.0f); + + // WHEN + deviceBackend->setAxisValue(2, 0.2f); + + // THEN + QCOMPARE(backendAxisInput.process(&handler, 32 * s), 0.0f); + QCOMPARE(backendAxisInput.process(&handler, 33 * s), 0.0f); + } }; QTEST_APPLESS_MAIN(tst_AnalogAxisInput) |