summaryrefslogtreecommitdiffstats
path: root/tests/auto/render/qeventforward/tst_qeventforward.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/render/qeventforward/tst_qeventforward.cpp')
-rw-r--r--tests/auto/render/qeventforward/tst_qeventforward.cpp56
1 files changed, 56 insertions, 0 deletions
diff --git a/tests/auto/render/qeventforward/tst_qeventforward.cpp b/tests/auto/render/qeventforward/tst_qeventforward.cpp
index 87ba114f2..aa525d4a2 100644
--- a/tests/auto/render/qeventforward/tst_qeventforward.cpp
+++ b/tests/auto/render/qeventforward/tst_qeventforward.cpp
@@ -54,6 +54,7 @@ private Q_SLOTS:
QCOMPARE(eventForward.forwardKeyboardEvents(), false);
QCOMPARE(eventForward.coordinateTransform(), QMatrix4x4());
QCOMPARE(eventForward.coordinateAttribute(), QStringLiteral("default"));
+ QCOMPARE(eventForward.focus(), false);
}
void checkPropertyChanges()
@@ -158,6 +159,25 @@ private Q_SLOTS:
QCOMPARE(eventForward.coordinateAttribute(), newValue);
QCOMPARE(spy.count(), 0);
}
+ {
+ // WHEN
+ QSignalSpy spy(&eventForward, SIGNAL(focusChanged(bool)));
+ const bool newValue = true;
+ eventForward.setFocus(newValue);
+
+ // THEN
+ QVERIFY(spy.isValid());
+ QCOMPARE(eventForward.focus(), newValue);
+ QCOMPARE(spy.count(), 1);
+
+ // WHEN
+ spy.clear();
+ eventForward.setFocus(newValue);
+
+ // THEN
+ QCOMPARE(eventForward.focus(), newValue);
+ QCOMPARE(spy.count(), 0);
+ }
}
void checkCreationData()
@@ -173,6 +193,7 @@ private Q_SLOTS:
eventForward.setForwardKeyboardEvents(true);
eventForward.setCoordinateTransform(transform);
eventForward.setCoordinateAttribute(QStringLiteral("position"));
+ eventForward.setFocus(true);
// WHEN
QVector<Qt3DCore::QNodeCreatedChangeBasePtr> creationChanges;
@@ -196,6 +217,7 @@ private Q_SLOTS:
QCOMPARE(eventForward.forwardKeyboardEvents(), cloneData.forwardKeyboardEvents);
QCOMPARE(eventForward.coordinateTransform(), cloneData.coordinateTransform);
QCOMPARE(eventForward.coordinateAttribute(), cloneData.coordinateAttribute);
+ QCOMPARE(eventForward.focus(), cloneData.focus);
QCOMPARE(eventForward.id(), creationChangeData->subjectId());
QCOMPARE(eventForward.isEnabled(), true);
QCOMPARE(eventForward.isEnabled(), creationChangeData->isNodeEnabled());
@@ -224,6 +246,7 @@ private Q_SLOTS:
QCOMPARE(eventForward.forwardKeyboardEvents(), cloneData.forwardKeyboardEvents);
QCOMPARE(eventForward.coordinateTransform(), cloneData.coordinateTransform);
QCOMPARE(eventForward.coordinateAttribute(), cloneData.coordinateAttribute);
+ QCOMPARE(eventForward.focus(), cloneData.focus);
QCOMPARE(eventForward.id(), creationChangeData->subjectId());
QCOMPARE(eventForward.isEnabled(), false);
QCOMPARE(eventForward.isEnabled(), creationChangeData->isNodeEnabled());
@@ -399,6 +422,39 @@ private Q_SLOTS:
}
+ void checkFocusUpdate()
+ {
+ // GIVEN
+ TestArbiter arbiter;
+ Qt3DRender::QEventForward eventForward;
+ arbiter.setArbiterOnNode(&eventForward);
+
+ {
+ // WHEN
+ eventForward.setFocus(true);
+ QCoreApplication::processEvents();
+
+ // THEN
+ QCOMPARE(arbiter.events.size(), 1);
+ auto change = arbiter.events.first().staticCast<Qt3DCore::QPropertyUpdatedChange>();
+ QCOMPARE(change->propertyName(), "focus");
+ QCOMPARE(change->value().toBool(), eventForward.focus());
+ QCOMPARE(change->type(), Qt3DCore::PropertyUpdated);
+
+ arbiter.events.clear();
+ }
+
+ {
+ // WHEN
+ eventForward.setFocus(true);
+ QCoreApplication::processEvents();
+
+ // THEN
+ QCOMPARE(arbiter.events.size(), 0);
+ }
+
+ }
+
};
QTEST_MAIN(tst_QEventForward)