// Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 #include #include #include #include #include #include "testarbiter.h" class tst_QLevelOfDetail: public QObject { Q_OBJECT private Q_SLOTS: void checkPropertyUpdates() { // GIVEN TestArbiter arbiter; QScopedPointer lod(new Qt3DRender::QLevelOfDetail()); arbiter.setArbiterOnNode(lod.data()); { // WHEN lod->setThresholdType(Qt3DRender::QLevelOfDetail::ProjectedScreenPixelSizeThreshold); QCoreApplication::processEvents(); // THEN QCOMPARE(arbiter.dirtyNodes().size(), 1); QCOMPARE(arbiter.dirtyNodes().front(), lod.data()); arbiter.clear(); } { // WHEN const QList thresholds = { 10., 20., 30. }; lod->setThresholds(thresholds); QCoreApplication::processEvents(); // THEN QCOMPARE(arbiter.dirtyNodes().size(), 1); QCOMPARE(arbiter.dirtyNodes().front(), lod.data()); arbiter.clear(); } } }; QTEST_MAIN(tst_QLevelOfDetail) #include "tst_qlevelofdetail.moc"