diff options
author | Joni Poikelin <joni.poikelin@qt.io> | 2019-10-14 12:31:40 +0300 |
---|---|---|
committer | Joni Poikelin <joni.poikelin@qt.io> | 2019-12-03 13:28:22 +0200 |
commit | 8310d636be068bb814418e2e6044c6dbd7df253a (patch) | |
tree | de1aa86d9046bef71829d088fca17f5c42bb201c /tests/auto/gui | |
parent | 443ef0010ae68ac5a883fb9ab7677d9de719e70e (diff) |
Fix serializing QUuid with QDataStream with Qt 4 stream versions
Fixes: QTBUG-76103
Change-Id: Iac92c33539940f5f67d014db5240c6dc14bfb772
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'tests/auto/gui')
-rw-r--r-- | tests/auto/gui/kernel/qguivariant/test/tst_qguivariant.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/auto/gui/kernel/qguivariant/test/tst_qguivariant.cpp b/tests/auto/gui/kernel/qguivariant/test/tst_qguivariant.cpp index a057ec2207..0b9fc3c9ae 100644 --- a/tests/auto/gui/kernel/qguivariant/test/tst_qguivariant.cpp +++ b/tests/auto/gui/kernel/qguivariant/test/tst_qguivariant.cpp @@ -113,6 +113,7 @@ private slots: void guiVariantAtExit(); void iconEquality(); + void qt4QPolygonFDataStream(); }; void tst_QGuiVariant::constructor_invalid_data() @@ -783,5 +784,25 @@ void tst_QGuiVariant::iconEquality() QVERIFY(a != b); } +void tst_QGuiVariant::qt4QPolygonFDataStream() +{ + qRegisterMetaTypeStreamOperators<QPolygonF>(); + + QByteArray data; + QDataStream stream(&data, QIODevice::WriteOnly); + stream.setVersion(QDataStream::Qt_4_8); + QPolygonF polygon; + polygon.append(QPointF(2, 3)); + stream << QVariant::fromValue(polygon); + const QByteArray qt4Data = QByteArray::fromHex("0000007f000000000a51506f6c79676f6e46000000000140000000000000004008000000000000"); + QCOMPARE(data, qt4Data); + + QDataStream input(&data, QIODevice::ReadOnly); + input.setVersion(QDataStream::Qt_4_8); + QVariant result; + input >> result; + QCOMPARE(result.value<QPolygonF>(), polygon); +} + QTEST_MAIN(tst_QGuiVariant) #include "tst_qguivariant.moc" |