diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2016-04-28 11:56:04 +0200 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2016-04-29 16:22:28 +0000 |
commit | f40de11aa8d4d43bffdf2541f6935e06e0b38ad3 (patch) | |
tree | a07f607dfc16162334b5c6cffd57c93bb10aff3c /tests/auto/core/qchangearbiter/tst_qchangearbiter.cpp | |
parent | 948d0357850918596b56f38a6dc6e25cd186f5a0 (diff) |
QNodeCreation overhaul
When a node has its parent set from NULL to some valid parent
it sends a QNodeCreatedChange. The new parent also subsequently receives a
QNodeAddedChange telling him that a child was added to its children property.
When a node with a valid parent changes parent to another valid parent, it
sends a QNodeRemovedChange to the old parent and a QNodeAddedChange to the new parent.
When a node with a valid parent has its parent set to NULL, it first sends a
QNodeRemovedChange to the old parent followed by a QNodeDestroyed change.
When a node is destroyed, prior to destruction it sets its parent to NULL,
which sends notifications as explained above.
Change-Id: Id99727542367797577c2bbb108580dfca902e776
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'tests/auto/core/qchangearbiter/tst_qchangearbiter.cpp')
-rw-r--r-- | tests/auto/core/qchangearbiter/tst_qchangearbiter.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/tests/auto/core/qchangearbiter/tst_qchangearbiter.cpp b/tests/auto/core/qchangearbiter/tst_qchangearbiter.cpp index e7214f4ad..b527b6a81 100644 --- a/tests/auto/core/qchangearbiter/tst_qchangearbiter.cpp +++ b/tests/auto/core/qchangearbiter/tst_qchangearbiter.cpp @@ -343,8 +343,8 @@ void tst_QChangeArbiter::registerObservers() child->setParent(root); arbiter->syncChanges(); Q_FOREACH (tst_SimpleObserver *o, observers) { - QVERIFY(!o->lastChange().isNull()); - QVERIFY(o->lastChange()->type() == Qt3DCore::NodeCreated); + QCOMPARE(o->lastChanges().size(), 1); + QVERIFY(o->lastChanges().last()->type() == Qt3DCore::NodeAdded); } Qt3DCore::QChangeArbiter::destroyThreadLocalChangeQueue(arbiter.data()); @@ -398,7 +398,7 @@ void tst_QChangeArbiter::registerSceneObserver() // THEN Q_FOREACH (tst_SimpleObserver *o, observers) { QVERIFY(!o->lastChange().isNull()); - QVERIFY(o->lastChange()->type() == Qt3DCore::NodeCreated); + QVERIFY(o->lastChange()->type() == Qt3DCore::NodeAdded); } Q_FOREACH (tst_SceneObserver *s, sceneObservers) { QVERIFY(!s->lastChange().isNull()); @@ -461,7 +461,7 @@ void tst_QChangeArbiter::unregisterObservers() // THEN Q_FOREACH (tst_SimpleObserver *o, observers) { QVERIFY(!o->lastChange().isNull()); - QVERIFY(o->lastChange()->type() == Qt3DCore::NodeCreated); + QVERIFY(o->lastChange()->type() == Qt3DCore::NodeAdded); } // WHEN @@ -474,7 +474,7 @@ void tst_QChangeArbiter::unregisterObservers() // THEN Q_FOREACH (tst_SimpleObserver *o, observers) { QVERIFY(!o->lastChange().isNull()); - QVERIFY(o->lastChange()->type() == Qt3DCore::NodeCreated); + QVERIFY(o->lastChange()->type() == Qt3DCore::NodeAdded); } Qt3DCore::QChangeArbiter::destroyThreadLocalChangeQueue(arbiter.data()); @@ -528,7 +528,7 @@ void tst_QChangeArbiter::unregisterSceneObservers() // THEN Q_FOREACH (tst_SimpleObserver *o, observers) { QVERIFY(!o->lastChange().isNull()); - QVERIFY(o->lastChange()->type() == Qt3DCore::NodeCreated); + QVERIFY(o->lastChange()->type() == Qt3DCore::NodeAdded); } Q_FOREACH (tst_SceneObserver *s, sceneObservers) { QVERIFY(!s->lastChange().isNull()); @@ -556,11 +556,11 @@ void tst_QChangeArbiter::unregisterSceneObservers() // THEN Q_FOREACH (tst_SimpleObserver *o, observers) { QVERIFY(!o->lastChange().isNull()); - QVERIFY(o->lastChange()->type() == Qt3DCore::NodeAboutToBeDeleted); + QVERIFY(o->lastChange()->type() == Qt3DCore::NodeRemoved); } Q_FOREACH (tst_SceneObserver *s, sceneObservers) { QVERIFY(!s->lastChange().isNull()); - QVERIFY(s->lastChange()->type() == Qt3DCore::NodeAboutToBeDeleted); + QVERIFY(s->lastChange()->type() == Qt3DCore::NodeDeleted); } Q_FOREACH (tst_SceneObserver *s, sceneObservers) @@ -573,11 +573,11 @@ void tst_QChangeArbiter::unregisterSceneObservers() // THEN Q_FOREACH (tst_SimpleObserver *o, observers) { QVERIFY(!o->lastChange().isNull()); - QVERIFY(o->lastChange()->type() == Qt3DCore::NodeCreated); + QVERIFY(o->lastChange()->type() == Qt3DCore::NodeAdded); } Q_FOREACH (tst_SceneObserver *s, sceneObservers) { QVERIFY(!s->lastChange().isNull()); - QVERIFY(s->lastChange()->type() == Qt3DCore::NodeAboutToBeDeleted); + QVERIFY(s->lastChange()->type() == Qt3DCore::NodeDeleted); } Qt3DCore::QChangeArbiter::destroyThreadLocalChangeQueue(arbiter.data()); |