summaryrefslogtreecommitdiffstats
path: root/tests/auto/render/material/tst_material.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/render/material/tst_material.cpp')
-rw-r--r--tests/auto/render/material/tst_material.cpp50
1 files changed, 26 insertions, 24 deletions
diff --git a/tests/auto/render/material/tst_material.cpp b/tests/auto/render/material/tst_material.cpp
index 9dfa0c246..e47eaea34 100644
--- a/tests/auto/render/material/tst_material.cpp
+++ b/tests/auto/render/material/tst_material.cpp
@@ -45,6 +45,7 @@ using namespace Qt3DRender::Render;
class tst_RenderMaterial : public Qt3DCore::QBackendNodeTester
{
Q_OBJECT
+
public:
tst_RenderMaterial() {}
@@ -117,7 +118,7 @@ void tst_RenderMaterial::shouldHavePropertiesMirroringFromItsPeer()
// GIVEN
backend.setRenderer(&renderer);
- simulateInitialization(frontendMaterial, &backend);
+ simulateInitializationSync(frontendMaterial, &backend);
// THEN
QVERIFY(backend.isEnabled() == frontendMaterial->isEnabled());
@@ -136,15 +137,17 @@ void tst_RenderMaterial::shouldHavePropertiesMirroringFromItsPeer()
void tst_RenderMaterial::shouldHandleParametersPropertyChange()
{
// GIVEN
- QScopedPointer<QParameter> parameter(new QParameter());
+ QParameter *parameter = new QParameter();
Material backend;
TestRenderer renderer;
backend.setRenderer(&renderer);
+ QMaterial material;
+ simulateInitializationSync(&material, &backend);
+
// WHEN
- const auto addChange = Qt3DCore::QPropertyNodeAddedChangePtr::create(Qt3DCore::QNodeId(), parameter.data());
- addChange->setPropertyName("parameter");
- backend.sceneChangeEvent(addChange);
+ material.addParameter(parameter);
+ backend.syncFromFrontEnd(&material, false);
// THEN
QCOMPARE(backend.parameters().count(), 1);
@@ -152,9 +155,8 @@ void tst_RenderMaterial::shouldHandleParametersPropertyChange()
QVERIFY(renderer.dirtyBits() != 0);
// WHEN
- const auto removeChange = Qt3DCore::QPropertyNodeRemovedChangePtr::create(Qt3DCore::QNodeId(), parameter.data());
- removeChange->setPropertyName("parameter");
- backend.sceneChangeEvent(removeChange);
+ material.removeParameter(parameter);
+ backend.syncFromFrontEnd(&material, false);
// THEN
QVERIFY(backend.parameters().isEmpty());
@@ -167,24 +169,23 @@ void tst_RenderMaterial::shouldHandleEnablePropertyChange()
TestRenderer renderer;
backend.setRenderer(&renderer);
+ QMaterial material;
+ simulateInitializationSync(&material, &backend);
+
// WHEN
- auto updateChange = QPropertyUpdatedChangePtr::create(QNodeId());
- updateChange->setValue(true);
- updateChange->setPropertyName("enabled");
- backend.sceneChangeEvent(updateChange);
+ material.setEnabled(false);
+ backend.syncFromFrontEnd(&material, false);
// THEN
- QVERIFY(backend.isEnabled());
+ QVERIFY(!backend.isEnabled());
QVERIFY(renderer.dirtyBits() != 0);
// WHEN
- auto secondUpdateChange = QPropertyUpdatedChangePtr::create(QNodeId());
- secondUpdateChange->setValue(false);
- secondUpdateChange->setPropertyName("enabled");
- backend.sceneChangeEvent(secondUpdateChange);
+ material.setEnabled(true);
+ backend.syncFromFrontEnd(&material, false);
// THEN
- QVERIFY(!backend.isEnabled());
+ QVERIFY(backend.isEnabled());
}
@@ -195,15 +196,16 @@ void tst_RenderMaterial::shouldHandleEffectPropertyChange()
TestRenderer renderer;
backend.setRenderer(&renderer);
+ QMaterial material;
+ simulateInitializationSync(&material, &backend);
+
// WHEN
- QPropertyUpdatedChangePtr updateChange(new Qt3DCore::QPropertyUpdatedChange(Qt3DCore::QNodeId()));
- Qt3DCore::QNodeId effectId = Qt3DCore::QNodeId::createId();
- updateChange->setValue(QVariant::fromValue(effectId));
- updateChange->setPropertyName("effect");
- backend.sceneChangeEvent(updateChange);
+ QEffect effect;
+ material.setEffect(&effect);
+ backend.syncFromFrontEnd(&material, false);
// THEN
- QCOMPARE(backend.effect(), effectId);
+ QCOMPARE(backend.effect(), effect.id());
QVERIFY(renderer.dirtyBits() != 0);
}