summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/gui/rhi/qshader/tst_qshader.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/auto/gui/rhi/qshader/tst_qshader.cpp b/tests/auto/gui/rhi/qshader/tst_qshader.cpp
index 378d1e85e7..22173d6d1a 100644
--- a/tests/auto/gui/rhi/qshader/tst_qshader.cpp
+++ b/tests/auto/gui/rhi/qshader/tst_qshader.cpp
@@ -36,6 +36,7 @@ class tst_QShader : public QObject
Q_OBJECT
private slots:
+ void serializeDeserialize();
void simpleCompileCheckResults();
void genVariants();
void shaderDescImplicitSharing();
@@ -56,6 +57,22 @@ static QShader getShader(const QString &name)
return QShader();
}
+void tst_QShader::serializeDeserialize()
+{
+ QShader s = getShader(QLatin1String(":/data/texture_all_v4.frag.qsb"));
+ QVERIFY(s.isValid());
+
+ QByteArray data = s.serialized();
+ QVERIFY(!data.isEmpty());
+
+ QShader s2;
+ QVERIFY(!s2.isValid());
+ QVERIFY(s != s2);
+ s2 = QShader::fromSerialized(data);
+ QVERIFY(s2.isValid());
+ QCOMPARE(s, s2);
+}
+
void tst_QShader::simpleCompileCheckResults()
{
QShader s = getShader(QLatin1String(":/data/color_spirv_v1.vert.qsb"));