summaryrefslogtreecommitdiffstats
path: root/tests/auto/gui/util
diff options
context:
space:
mode:
authorKevin Ottens <kevin.ottens@kdab.com>2017-07-19 13:49:42 +0200
committerSean Harmer <sean.harmer@kdab.com>2017-08-02 17:34:52 +0000
commit236284357ff389d377cbb42141e71f6093eccba5 (patch)
tree7c522c6c0673cc4c85e960e68699250b8f78e6da /tests/auto/gui/util
parentf3c70ab9f316a28c0c71fe94b90de8e42c45d9a5 (diff)
Add support for layers in QShaderGraphLoader format
Change-Id: I5038600e73523ac7eb37a88ddff1f942af18f18e Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'tests/auto/gui/util')
-rw-r--r--tests/auto/gui/util/qshadergraphloader/tst_qshadergraphloader.cpp22
1 files changed, 14 insertions, 8 deletions
diff --git a/tests/auto/gui/util/qshadergraphloader/tst_qshadergraphloader.cpp b/tests/auto/gui/util/qshadergraphloader/tst_qshadergraphloader.cpp
index 4fec89117e..761e03a195 100644
--- a/tests/auto/gui/util/qshadergraphloader/tst_qshadergraphloader.cpp
+++ b/tests/auto/gui/util/qshadergraphloader/tst_qshadergraphloader.cpp
@@ -67,23 +67,26 @@ namespace
return port;
}
- QShaderNode createNode(const QVector<QShaderNodePort> &ports)
+ QShaderNode createNode(const QVector<QShaderNodePort> &ports, const QStringList &layers = QStringList())
{
auto node = QShaderNode();
node.setUuid(QUuid::createUuid());
+ node.setLayers(layers);
for (const auto &port : ports)
node.addPort(port);
return node;
}
QShaderGraph::Edge createEdge(const QUuid &sourceUuid, const QString &sourceName,
- const QUuid &targetUuid, const QString &targetName)
+ const QUuid &targetUuid, const QString &targetName,
+ const QStringList &layers = QStringList())
{
auto edge = QShaderGraph::Edge();
edge.sourceNodeUuid = sourceUuid;
edge.sourcePortName = sourceName;
edge.targetNodeUuid = targetUuid;
edge.targetPortName = targetName;
+ edge.layers = layers;
return edge;
}
@@ -298,7 +301,8 @@ void tst_QShaderGraphLoader::shouldLoadFromJsonStream_data()
" \"nodes\": ["
" {"
" \"uuid\": \"{00000000-0000-0000-0000-000000000001}\","
- " \"type\": \"MyInput\""
+ " \"type\": \"MyInput\","
+ " \"layers\": [\"foo\", \"bar\"]"
" },"
" {"
" \"uuid\": \"{00000000-0000-0000-0000-000000000002}\","
@@ -314,7 +318,8 @@ void tst_QShaderGraphLoader::shouldLoadFromJsonStream_data()
" \"sourceUuid\": \"{00000000-0000-0000-0000-000000000001}\","
" \"sourcePort\": \"input\","
" \"targetUuid\": \"{00000000-0000-0000-0000-000000000003}\","
- " \"targetPort\": \"functionInput\""
+ " \"targetPort\": \"functionInput\","
+ " \"layers\": [\"bar\", \"baz\"]"
" },"
" {"
" \"sourceUuid\": \"{00000000-0000-0000-0000-000000000003}\","
@@ -351,7 +356,7 @@ void tst_QShaderGraphLoader::shouldLoadFromJsonStream_data()
auto input = createNode({
createPort(QShaderNodePort::Output, "input")
- });
+ }, {"foo", "bar"});
input.setUuid(QUuid("{00000000-0000-0000-0000-000000000001}"));
auto output = createNode({
createPort(QShaderNodePort::Input, "output")
@@ -366,7 +371,7 @@ void tst_QShaderGraphLoader::shouldLoadFromJsonStream_data()
graph.addNode(input);
graph.addNode(output);
graph.addNode(function);
- graph.addEdge(createEdge(input.uuid(), "input", function.uuid(), "functionInput"));
+ graph.addEdge(createEdge(input.uuid(), "input", function.uuid(), "functionInput", {"bar", "baz"}));
graph.addEdge(createEdge(function.uuid(), "functionOutput", output.uuid(), "output"));
return graph;
@@ -587,8 +592,8 @@ void tst_QShaderGraphLoader::shouldLoadFromJsonStream()
QCOMPARE(loader.status(), status);
QFETCH(QShaderGraph, graph);
- const auto statements = loader.graph().createStatements();
- const auto expected = graph.createStatements();
+ const auto statements = loader.graph().createStatements({"foo", "bar", "baz"});
+ const auto expected = graph.createStatements({"foo", "bar", "baz"});
dumpStatementsIfNeeded(statements, expected);
QCOMPARE(statements, expected);
@@ -602,6 +607,7 @@ void tst_QShaderGraphLoader::shouldLoadFromJsonStream()
const auto actualNode = statements.at(i).node;
const auto expectedNode = expected.at(i).node;
+ QCOMPARE(actualNode.layers(), expectedNode.layers());
QCOMPARE(actualNode.ports(), expectedNode.ports());
QCOMPARE(sortedParameters(actualNode), sortedParameters(expectedNode));
for (const auto &name : expectedNode.parameterNames()) {