// Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only #include #include #include #include #include #include #include "testdevice.h" #include class tst_QAnalogAxisInput: public QObject { Q_OBJECT public: tst_QAnalogAxisInput() { qRegisterMetaType("Qt3DInput::QAbstractPhysicalDevice*"); } private Q_SLOTS: void checkPropertyUpdates() { // GIVEN TestArbiter arbiter; QScopedPointer axisInput(new Qt3DInput::QAnalogAxisInput()); arbiter.setArbiterOnNode(axisInput.data()); // WHEN axisInput->setAxis(350); // THEN QCOMPARE(arbiter.dirtyNodes().size(), 1); QCOMPARE(arbiter.dirtyNodes().front(), axisInput.data()); arbiter.clear(); // WHEN TestDevice *device = new TestDevice(axisInput.data()); QCoreApplication::processEvents(); axisInput->setSourceDevice(device); // THEN QCOMPARE(arbiter.dirtyNodes().size(), 1); QCOMPARE(arbiter.dirtyNodes().front(), axisInput.data()); arbiter.clear(); } }; QTEST_MAIN(tst_QAnalogAxisInput) #include "tst_qanalogaxisinput.moc"