summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/render/io/qsceneloader.cpp53
-rw-r--r--src/render/io/qsceneloader.h1
-rw-r--r--src/render/io/qsceneloader_p.h1
-rw-r--r--src/render/io/scene.cpp26
-rw-r--r--src/render/io/scene_p.h1
-rw-r--r--src/render/jobs/loadscenejob.cpp58
-rw-r--r--src/render/jobs/loadscenejob_p.h23
-rw-r--r--tests/auto/render/loadscenejob/tst_loadscenejob.cpp80
-rw-r--r--tests/auto/render/qsceneloader/tst_qsceneloader.cpp53
-rw-r--r--tests/auto/render/sceneloader/tst_sceneloader.cpp45
10 files changed, 93 insertions, 248 deletions
diff --git a/src/render/io/qsceneloader.cpp b/src/render/io/qsceneloader.cpp
index d66fe3080..cf1e45355 100644
--- a/src/render/io/qsceneloader.cpp
+++ b/src/render/io/qsceneloader.cpp
@@ -219,6 +219,27 @@ void QSceneLoaderPrivate::setStatus(QSceneLoader::Status status)
}
}
+void QSceneLoaderPrivate::setSceneRoot(QEntity *root)
+{
+ // If we already have a scene sub tree, delete it
+ if (m_subTreeRoot) {
+ delete m_subTreeRoot;
+ m_subTreeRoot = nullptr;
+ }
+
+ // If we have successfully loaded a scene, graft it in
+ if (root) {
+ // Get the entity to which this component is attached
+ const Qt3DCore::QNodeIdVector entities = m_scene->entitiesForComponent(m_id);
+ Q_ASSERT(entities.size() == 1);
+ Qt3DCore::QNodeId parentEntityId = entities.first();
+ QEntity *parentEntity = qobject_cast<QEntity *>(m_scene->lookupNode(parentEntityId));
+ root->setParent(parentEntity);
+ m_subTreeRoot = root;
+ populateEntityMap(m_subTreeRoot);
+ }
+}
+
/*!
The constructor creates an instance with the specified \a parent.
*/
@@ -238,38 +259,6 @@ QSceneLoader::QSceneLoader(QSceneLoaderPrivate &dd, QNode *parent)
{
}
-// Called in main thread
-/*! \internal */
-void QSceneLoader::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change)
-{
- Q_D(QSceneLoader);
- QPropertyUpdatedChangePtr e = qSharedPointerCast<QPropertyUpdatedChange>(change);
- if (e->type() == PropertyUpdated) {
- if (e->propertyName() == QByteArrayLiteral("scene")) {
- // If we already have a scene sub tree, delete it
- if (d->m_subTreeRoot) {
- delete d->m_subTreeRoot;
- d->m_subTreeRoot = nullptr;
- }
-
- // If we have successfully loaded a scene, graft it in
- auto *subTreeRoot = e->value().value<Qt3DCore::QEntity *>();
- if (subTreeRoot) {
- // Get the entity to which this component is attached
- const Qt3DCore::QNodeIdVector entities = d->m_scene->entitiesForComponent(d->m_id);
- Q_ASSERT(entities.size() == 1);
- Qt3DCore::QNodeId parentEntityId = entities.first();
- QEntity *parentEntity = qobject_cast<QEntity *>(d->m_scene->lookupNode(parentEntityId));
- subTreeRoot->setParent(parentEntity);
- d->m_subTreeRoot = subTreeRoot;
- d->populateEntityMap(d->m_subTreeRoot);
- }
- } else if (e->propertyName() == QByteArrayLiteral("status")) {
- d->setStatus(e->value().value<QSceneLoader::Status>());
- }
- }
-}
-
QUrl QSceneLoader::source() const
{
Q_D(const QSceneLoader);
diff --git a/src/render/io/qsceneloader.h b/src/render/io/qsceneloader.h
index 4cb743333..6842a6926 100644
--- a/src/render/io/qsceneloader.h
+++ b/src/render/io/qsceneloader.h
@@ -60,7 +60,6 @@ public:
explicit QSceneLoader(Qt3DCore::QNode *parent = nullptr);
~QSceneLoader();
- void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override;
enum Status {
None = 0,
Loading,
diff --git a/src/render/io/qsceneloader_p.h b/src/render/io/qsceneloader_p.h
index 50745c66f..213bc1104 100644
--- a/src/render/io/qsceneloader_p.h
+++ b/src/render/io/qsceneloader_p.h
@@ -67,6 +67,7 @@ public:
QSceneLoaderPrivate();
void setStatus(QSceneLoader::Status status);
+ void setSceneRoot(Qt3DCore::QEntity *root);
Q_DECLARE_PUBLIC(QSceneLoader)
diff --git a/src/render/io/scene.cpp b/src/render/io/scene.cpp
index e7f289f8a..089091701 100644
--- a/src/render/io/scene.cpp
+++ b/src/render/io/scene.cpp
@@ -66,16 +66,6 @@ void Scene::cleanup()
m_source.clear();
}
-void Scene::setStatus(QSceneLoader::Status status)
-{
- // Send the new subtree to the frontend or notify failure
- auto e = Qt3DCore::QPropertyUpdatedChangePtr::create(peerId());
- e->setDeliveryFlags(Qt3DCore::QSceneChange::DeliverToAll);
- e->setPropertyName("status");
- e->setValue(QVariant::fromValue(status));
- notifyObservers(e);
-}
-
void Scene::syncFromFrontEnd(const Qt3DCore::QNode *frontEnd, bool firstTime)
{
const QSceneLoader *node = qobject_cast<const QSceneLoader *>(frontEnd);
@@ -99,22 +89,6 @@ QUrl Scene::source() const
return m_source;
}
-void Scene::setSceneSubtree(Qt3DCore::QEntity *subTree)
-{
- if (subTree) {
- // Move scene sub tree to the application thread so that it can be grafted in.
- const auto appThread = QCoreApplication::instance()->thread();
- subTree->moveToThread(appThread);
- }
-
- // Send the new subtree to the frontend or notify failure
- auto e = Qt3DCore::QPropertyUpdatedChangePtr::create(peerId());
- e->setDeliveryFlags(Qt3DCore::QSceneChange::DeliverToAll);
- e->setPropertyName("scene");
- e->setValue(QVariant::fromValue(subTree));
- notifyObservers(e);
-}
-
void Scene::setSceneManager(SceneManager *manager)
{
if (m_sceneManager != manager)
diff --git a/src/render/io/scene_p.h b/src/render/io/scene_p.h
index 04b9bba1a..bf625b369 100644
--- a/src/render/io/scene_p.h
+++ b/src/render/io/scene_p.h
@@ -74,7 +74,6 @@ public:
void syncFromFrontEnd(const Qt3DCore::QNode *frontEnd, bool firstTime) override;
QUrl source() const;
- void setSceneSubtree(Qt3DCore::QEntity *subTree);
void setSceneManager(SceneManager *manager);
void cleanup();
diff --git a/src/render/jobs/loadscenejob.cpp b/src/render/jobs/loadscenejob.cpp
index 9885d3225..f858f82e3 100644
--- a/src/render/jobs/loadscenejob.cpp
+++ b/src/render/jobs/loadscenejob.cpp
@@ -42,10 +42,12 @@
#include <private/nodemanagers_p.h>
#include <private/scenemanager_p.h>
#include <Qt3DCore/qentity.h>
+#include <Qt3DCore/private/qaspectmanager_p.h>
#include <Qt3DRender/private/job_common_p.h>
#include <Qt3DRender/private/qsceneimporter_p.h>
#include <Qt3DRender/private/qurlhelper_p.h>
#include <Qt3DRender/qsceneloader.h>
+#include <Qt3DRender/private/qsceneloader_p.h>
#include <Qt3DRender/private/renderlogging_p.h>
#include <QFileInfo>
#include <QMimeDatabase>
@@ -55,10 +57,10 @@ QT_BEGIN_NAMESPACE
namespace Qt3DRender {
namespace Render {
-LoadSceneJob::LoadSceneJob(const QUrl &source, Qt3DCore::QNodeId m_sceneComponent)
- : QAspectJob()
+LoadSceneJob::LoadSceneJob(const QUrl &source, Qt3DCore::QNodeId sceneComponent)
+ : QAspectJob(*new LoadSceneJobPrivate(this))
, m_source(source)
- , m_sceneComponent(m_sceneComponent)
+ , m_sceneComponent(sceneComponent)
, m_managers(nullptr)
{
SET_JOB_RUN_STAT_TYPE(this, JobTypes::LoadScene, 0);
@@ -97,7 +99,6 @@ void LoadSceneJob::run()
Q_ASSERT(scene);
// Reset status
- scene->setStatus(QSceneLoader::None);
QSceneLoader::Status finalStatus = QSceneLoader::None;
// Perform the loading only if the source wasn't explicitly set to empty
@@ -110,8 +111,7 @@ void LoadSceneJob::run()
qCDebug(SceneLoaders) << Q_FUNC_INFO << "Attempting to load" << finfo.filePath();
if (finfo.exists()) {
const QStringList extensions(finfo.suffix());
- sceneSubTree = tryLoadScene(scene,
- finalStatus,
+ sceneSubTree = tryLoadScene(finalStatus,
extensions,
[this] (QSceneImporter *importer) {
importer->setSource(m_source);
@@ -131,8 +131,7 @@ void LoadSceneJob::run()
const QString basePath = m_source.adjusted(QUrl::RemoveFilename).toString();
- sceneSubTree = tryLoadScene(scene,
- finalStatus,
+ sceneSubTree = tryLoadScene(finalStatus,
extensions,
[this, basePath] (QSceneImporter *importer) {
importer->setData(m_data, basePath);
@@ -140,19 +139,18 @@ void LoadSceneJob::run()
}
}
- // If the sceneSubTree is null it will trigger the frontend to unload
- // any subtree it may hold
- // Set clone of sceneTree in sceneComponent. This will move the sceneSubTree
- // to the QCoreApplication thread which is where the frontend object tree lives.
- scene->setSceneSubtree(sceneSubTree);
+ Q_D(LoadSceneJob);
+ d->m_sceneSubtree = sceneSubTree;
+ d->m_status = finalStatus;
- // Note: the status is set after the subtree so that bindinds depending on the status
- // in the frontend will be consistent
- scene->setStatus(finalStatus);
+ if (d->m_sceneSubtree) {
+ // Move scene sub tree to the application thread so that it can be grafted in.
+ const auto appThread = QCoreApplication::instance()->thread();
+ d->m_sceneSubtree->moveToThread(appThread);
+ }
}
-Qt3DCore::QEntity *LoadSceneJob::tryLoadScene(Scene *scene,
- QSceneLoader::Status &finalStatus,
+Qt3DCore::QEntity *LoadSceneJob::tryLoadScene(QSceneLoader::Status &finalStatus,
const QStringList &extensions,
const std::function<void (QSceneImporter *)> &importerSetupFunc)
{
@@ -165,9 +163,6 @@ Qt3DCore::QEntity *LoadSceneJob::tryLoadScene(Scene *scene,
foundSuitableLoggerPlugin = true;
- // If the file type is supported -> enter Loading status
- scene->setStatus(QSceneLoader::Loading);
-
// Set source file or data on importer
importerSetupFunc(sceneImporter);
@@ -188,6 +183,27 @@ Qt3DCore::QEntity *LoadSceneJob::tryLoadScene(Scene *scene,
return sceneSubTree;
}
+void LoadSceneJobPrivate::postFrame(Qt3DCore::QAspectManager *manager)
+{
+ Q_Q(LoadSceneJob);
+ QSceneLoader *node =
+ qobject_cast<QSceneLoader *>(manager->lookupNode(q->sceneComponentId()));
+ if (!node)
+ return;
+ Qt3DRender::QSceneLoaderPrivate *dNode =
+ static_cast<decltype(dNode)>(Qt3DCore::QNodePrivate::get(node));
+
+ // If the sceneSubTree is null it will trigger the frontend to unload
+ // any subtree it may hold
+ // Set clone of sceneTree in sceneComponent. This will move the sceneSubTree
+ // to the QCoreApplication thread which is where the frontend object tree lives.
+ dNode->setSceneRoot(m_sceneSubtree);
+
+ // Note: the status is set after the subtree so that bindinds depending on the status
+ // in the frontend will be consistent
+ dNode->setStatus(m_status);
+}
+
} // namespace Render
} // namespace Qt3DRender
diff --git a/src/render/jobs/loadscenejob_p.h b/src/render/jobs/loadscenejob_p.h
index 0c77dc6e8..3675d94c1 100644
--- a/src/render/jobs/loadscenejob_p.h
+++ b/src/render/jobs/loadscenejob_p.h
@@ -52,6 +52,7 @@
//
#include <Qt3DCore/qaspectjob.h>
+#include <Qt3DCore/private/qaspectjob_p.h>
#include <Qt3DCore/qnodeid.h>
#include <Qt3DRender/qsceneloader.h>
#include <QSharedPointer>
@@ -69,6 +70,24 @@ namespace Render {
class Scene;
class NodeManagers;
+class LoadSceneJob;
+
+class Q_AUTOTEST_EXPORT LoadSceneJobPrivate : public Qt3DCore::QAspectJobPrivate
+{
+public:
+ explicit LoadSceneJobPrivate(LoadSceneJob *q): q_ptr(q) {}
+ ~LoadSceneJobPrivate() override {}
+
+ void postFrame(Qt3DCore::QAspectManager *manager) override;
+
+ Qt3DCore::QEntity *m_sceneSubtree = nullptr;
+ QSceneLoader::Status m_status = QSceneLoader::None;
+
+ Q_DECLARE_PUBLIC(LoadSceneJob)
+private:
+ LoadSceneJob *q_ptr;
+};
+
class Q_AUTOTEST_EXPORT LoadSceneJob : public Qt3DCore::QAspectJob
{
public:
@@ -91,10 +110,10 @@ private:
NodeManagers *m_managers;
QList<QSceneImporter *> m_sceneImporters;
- Qt3DCore::QEntity *tryLoadScene(Scene *scene,
- QSceneLoader::Status &finalStatus,
+ Qt3DCore::QEntity *tryLoadScene(QSceneLoader::Status &finalStatus,
const QStringList &extensions,
const std::function<void (QSceneImporter *)> &importerSetupFunc);
+ Q_DECLARE_PRIVATE(LoadSceneJob)
};
typedef QSharedPointer<LoadSceneJob> LoadSceneJobPtr;
diff --git a/tests/auto/render/loadscenejob/tst_loadscenejob.cpp b/tests/auto/render/loadscenejob/tst_loadscenejob.cpp
index 66c9271f7..044c3e0f4 100644
--- a/tests/auto/render/loadscenejob/tst_loadscenejob.cpp
+++ b/tests/auto/render/loadscenejob/tst_loadscenejob.cpp
@@ -148,27 +148,9 @@ private Q_SLOTS:
loadSceneJob.run();
// THEN
- QCOMPARE(arbiter.events.count(), 4);
- auto change = arbiter.events.at(0).staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(change->subjectId(), scene->peerId());
- QCOMPARE(change->propertyName(), "status");
- QCOMPARE(change->value().value<Qt3DRender::QSceneLoader::Status>(), Qt3DRender::QSceneLoader::None);
-
- change = arbiter.events.at(1).staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(change->subjectId(), scene->peerId());
- QCOMPARE(change->propertyName(), "status");
- QCOMPARE(change->value().value<Qt3DRender::QSceneLoader::Status>(), Qt3DRender::QSceneLoader::Loading);
-
- change = arbiter.events.at(2).staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(change->subjectId(), scene->peerId());
- QCOMPARE(change->propertyName(), "scene");
- QVERIFY(change->value().value<Qt3DCore::QEntity *>() != nullptr);
- delete change->value().value<Qt3DCore::QEntity *>();
-
- change = arbiter.events.at(3).staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(change->subjectId(), scene->peerId());
- QCOMPARE(change->propertyName(), "status");
- QCOMPARE(change->value().value<Qt3DRender::QSceneLoader::Status>(), Qt3DRender::QSceneLoader::Ready);
+ Qt3DRender::Render::LoadSceneJobPrivate *dJob = static_cast<decltype(dJob)>(Qt3DCore::QAspectJobPrivate::get(&loadSceneJob));
+ QCOMPARE(dJob->m_status, Qt3DRender::QSceneLoader::Ready);
+ QVERIFY(dJob->m_sceneSubtree != nullptr);
}
void checkEmptySource()
@@ -192,21 +174,9 @@ private Q_SLOTS:
loadSceneJob.run();
// THEN
- QCOMPARE(arbiter.events.count(), 3);
- auto change = arbiter.events.at(0).staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(change->subjectId(), scene->peerId());
- QCOMPARE(change->propertyName(), "status");
- QCOMPARE(change->value().value<Qt3DRender::QSceneLoader::Status>(), Qt3DRender::QSceneLoader::None);
-
- change = arbiter.events.at(1).staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(change->subjectId(), scene->peerId());
- QCOMPARE(change->propertyName(), "scene");
- QVERIFY(change->value().value<Qt3DCore::QEntity *>() == nullptr);
-
- change = arbiter.events.at(2).staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(change->subjectId(), scene->peerId());
- QCOMPARE(change->propertyName(), "status");
- QCOMPARE(change->value().value<Qt3DRender::QSceneLoader::Status>(), Qt3DRender::QSceneLoader::None);
+ Qt3DRender::Render::LoadSceneJobPrivate *dJob = static_cast<decltype(dJob)>(Qt3DCore::QAspectJobPrivate::get(&loadSceneJob));
+ QCOMPARE(dJob->m_status, Qt3DRender::QSceneLoader::None);
+ QVERIFY(dJob->m_sceneSubtree == nullptr);
}
void checkRunValidSourceUnsupportedFormat()
@@ -233,21 +203,9 @@ private Q_SLOTS:
loadSceneJob.run();
// THEN
- QCOMPARE(arbiter.events.count(), 3);
- auto change = arbiter.events.at(0).staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(change->subjectId(), scene->peerId());
- QCOMPARE(change->propertyName(), "status");
- QCOMPARE(change->value().value<Qt3DRender::QSceneLoader::Status>(), Qt3DRender::QSceneLoader::None);
-
- change = arbiter.events.at(1).staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(change->subjectId(), scene->peerId());
- QCOMPARE(change->propertyName(), "scene");
- QVERIFY(change->value().value<Qt3DCore::QEntity *>() == nullptr);
-
- change = arbiter.events.at(2).staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(change->subjectId(), scene->peerId());
- QCOMPARE(change->propertyName(), "status");
- QCOMPARE(change->value().value<Qt3DRender::QSceneLoader::Status>(), Qt3DRender::QSceneLoader::Error);
+ Qt3DRender::Render::LoadSceneJobPrivate *dJob = static_cast<decltype(dJob)>(Qt3DCore::QAspectJobPrivate::get(&loadSceneJob));
+ QCOMPARE(dJob->m_status, Qt3DRender::QSceneLoader::Error);
+ QVERIFY(dJob->m_sceneSubtree == nullptr);
}
void checkRunErrorAtLoading()
@@ -271,22 +229,10 @@ private Q_SLOTS:
loadSceneJob.run();
// THEN
- QCOMPARE(arbiter.events.count(), 3);
- auto change = arbiter.events.at(0).staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(change->subjectId(), scene->peerId());
- QCOMPARE(change->propertyName(), "status");
- QCOMPARE(change->value().value<Qt3DRender::QSceneLoader::Status>(), Qt3DRender::QSceneLoader::None);
-
- change = arbiter.events.at(1).staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(change->subjectId(), scene->peerId());
- QCOMPARE(change->propertyName(), "scene");
- QVERIFY(change->value().value<Qt3DCore::QEntity *>() == nullptr);
- delete change->value().value<Qt3DCore::QEntity *>();
-
- change = arbiter.events.at(2).staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(change->subjectId(), scene->peerId());
- QCOMPARE(change->propertyName(), "status");
- QCOMPARE(change->value().value<Qt3DRender::QSceneLoader::Status>(), Qt3DRender::QSceneLoader::Error);
+ // THEN
+ Qt3DRender::Render::LoadSceneJobPrivate *dJob = static_cast<decltype(dJob)>(Qt3DCore::QAspectJobPrivate::get(&loadSceneJob));
+ QCOMPARE(dJob->m_status, Qt3DRender::QSceneLoader::Error);
+ QVERIFY(dJob->m_sceneSubtree == nullptr);
}
};
diff --git a/tests/auto/render/qsceneloader/tst_qsceneloader.cpp b/tests/auto/render/qsceneloader/tst_qsceneloader.cpp
index 381960c42..9336a0b2e 100644
--- a/tests/auto/render/qsceneloader/tst_qsceneloader.cpp
+++ b/tests/auto/render/qsceneloader/tst_qsceneloader.cpp
@@ -137,59 +137,6 @@ private Q_SLOTS:
arbiter.dirtyNodes.clear();
}
- // DEPRECATED
-// void checkStatusPropertyUpdate()
-// {
-// // GIVEN
-// qRegisterMetaType<Qt3DRender::QSceneLoader::Status>("Status");
-// TestArbiter arbiter;
-// QScopedPointer<Qt3DRender::QSceneLoader> sceneLoader(new Qt3DRender::QSceneLoader());
-// arbiter.setArbiterOnNode(sceneLoader.data());
-// QSignalSpy spy(sceneLoader.data(), SIGNAL(statusChanged(Status)));
-
-
-// // WHEN
-// const Qt3DRender::QSceneLoader::Status newStatus = Qt3DRender::QSceneLoader::Ready;
-// sceneLoader->setStatus(newStatus);
-
-// // THEN
-// QVERIFY(arbiter.events.empty());
-// QCOMPARE(spy.count(), 1);
-
-// spy.clear();
-// }
-
- void checkPropertyChanges()
- {
- // GIVEN
- Qt3DCore::QScene scene;
- Qt3DCore::QEntity rootEntity;
- QScopedPointer<Qt3DRender::QSceneLoader> sceneLoader(new Qt3DRender::QSceneLoader());
- Qt3DCore::QNodePrivate::get(&rootEntity)->setScene(&scene);
- Qt3DCore::QNodePrivate::get(sceneLoader.data())->setScene(&scene);
- rootEntity.addComponent(sceneLoader.data());
-
- // WHEN
- Qt3DCore::QEntity backendCreatedSubtree;
- Qt3DCore::QPropertyUpdatedChangePtr valueChange(new Qt3DCore::QPropertyUpdatedChange(Qt3DCore::QNodeId()));
- valueChange->setPropertyName("scene");
- valueChange->setValue(QVariant::fromValue(&backendCreatedSubtree));
- sceneLoader->sceneChangeEvent(valueChange);
-
- // THEN
- QCOMPARE(static_cast<Qt3DRender::QSceneLoaderPrivate *>(Qt3DCore::QNodePrivate::get(sceneLoader.data()))->m_subTreeRoot, &backendCreatedSubtree);
-
- // WHEN
- const Qt3DRender::QSceneLoader::Status newStatus = Qt3DRender::QSceneLoader::Ready;
- valueChange = QSharedPointer<Qt3DCore::QPropertyUpdatedChange>::create(Qt3DCore::QNodeId());
- valueChange->setPropertyName("status");
- valueChange->setValue(QVariant::fromValue(newStatus));
- sceneLoader->sceneChangeEvent(valueChange);
-
- // THEN
- QCOMPARE(sceneLoader->status(), newStatus);
- }
-
void checkEntities()
{
// GIVEN
diff --git a/tests/auto/render/sceneloader/tst_sceneloader.cpp b/tests/auto/render/sceneloader/tst_sceneloader.cpp
index e5ea8b6c1..d146abfcc 100644
--- a/tests/auto/render/sceneloader/tst_sceneloader.cpp
+++ b/tests/auto/render/sceneloader/tst_sceneloader.cpp
@@ -130,51 +130,6 @@ private Q_SLOTS:
QCOMPARE(sceneLoader.isEnabled(), false);
}
- void checkSubtreeTransmission()
- {
- // GIVEN
- TestRenderer renderer;
- TestArbiter arbiter;
- Qt3DRender::Render::Scene sceneLoader;
-
- Qt3DCore::QBackendNodePrivate::get(&sceneLoader)->setArbiter(&arbiter);
- sceneLoader.setRenderer(&renderer);
-
- // WHEN
- Qt3DCore::QEntity subtree;
- sceneLoader.setSceneSubtree(&subtree);
-
- // THEN
- Qt3DCore::QPropertyUpdatedChangePtr change = arbiter.events.first().staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(arbiter.events.count(), 1);
- QCOMPARE(change->propertyName(), "scene");
- QCOMPARE(change->value().value<Qt3DCore::QEntity *>(), &subtree);
-
- arbiter.events.clear();
- }
-
- void checkStatusTransmission()
- {
- // GIVEN
- TestRenderer renderer;
- TestArbiter arbiter;
- Qt3DRender::Render::Scene sceneLoader;
-
- Qt3DCore::QBackendNodePrivate::get(&sceneLoader)->setArbiter(&arbiter);
- sceneLoader.setRenderer(&renderer);
-
- // WHEN
- sceneLoader.setStatus(Qt3DRender::QSceneLoader::Ready);
-
- // THEN
- Qt3DCore::QPropertyUpdatedChangePtr change = arbiter.events.first().staticCast<Qt3DCore::QPropertyUpdatedChange>();
- QCOMPARE(arbiter.events.count(), 1);
- QCOMPARE(change->propertyName(), "status");
- QCOMPARE(change->value().value<Qt3DRender::QSceneLoader::Status>(), Qt3DRender::QSceneLoader::Ready);
-
- arbiter.events.clear();
- }
-
void checkProcessEmptyPath()
{
// GIVEN