From: Jędrzej Nowacki Date: Fri, 13 Jan 2012 09:41:02 +0000 (+0100) Subject: Cleanup mess in public type ids. X-Git-Tag: qt-v5.0.0-alpha1~1565 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=aee1f6cc413f56bf4962324799ee3887c3dd037f;p=profile%2Fivi%2Fqtbase.git Cleanup mess in public type ids. There is no reason to keep two separated core types sets. It couldn't be fixed before Qt5 because of binary compatibility promise. This patch merges QMetaType core types with ext core types. This "simple" operation consists of: - QDataStream version was incremented, because type ids are saved in QVariant's data stream. - QMetaType LastExtCoreType and FirstExtCoreType were replaced by LastCoreType, FirstCoreType and new QMetaType::HighestInternalId. - New tests checking QVariant data stream for Qt4 and for Qt5 versions were added. Change-Id: I02dd74d29317365c297a789a4eb7c9c5edc3b231 Reviewed-by: João Abecasis --- diff --git a/src/corelib/io/qdatastream.cpp b/src/corelib/io/qdatastream.cpp index 5dad9bd..614910a 100644 --- a/src/corelib/io/qdatastream.cpp +++ b/src/corelib/io/qdatastream.cpp @@ -250,7 +250,7 @@ QT_BEGIN_NAMESPACE return retVal; enum { - DefaultStreamVersion = QDataStream::Qt_4_6 + DefaultStreamVersion = QDataStream::Qt_5_0 }; // ### 5.0: when streaming invalid QVariants, just the type should diff --git a/src/corelib/io/qdatastream.h b/src/corelib/io/qdatastream.h index ca10304..818e304 100644 --- a/src/corelib/io/qdatastream.h +++ b/src/corelib/io/qdatastream.h @@ -87,7 +87,7 @@ public: Qt_4_7 = Qt_4_6, Qt_4_8 = Qt_4_7, Qt_4_9 = Qt_4_8, - Qt_5_0 = Qt_4_8 + Qt_5_0 = 13 #if QT_VERSION >= 0x050100 #error Add the datastream version for this Qt version #endif diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index 1c106f4..e5fd8a5 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -228,14 +228,13 @@ template<> struct TypeDefiniton { static const bool IsAvailable = false \value User Base value for user types - \omitvalue FirstCoreExtType \omitvalue FirstGuiType \omitvalue FirstWidgetsType - \omitvalue LastCoreExtType \omitvalue LastCoreType \omitvalue LastGuiType \omitvalue LastWidgetsType \omitvalue QReal + \omitvalue HighestInternalId Additional types can be registered using Q_DECLARE_METATYPE(). @@ -362,10 +361,10 @@ const char *QMetaType::typeName(int type) // In theory it can be filled during compilation time, but for some reason template code // that is able to do it causes GCC 4.6 to generate additional 3K of executable code. Probably // it is not worth of it. - static const char *namesCache[QMetaType::LastCoreExtType + 1]; + static const char *namesCache[QMetaType::HighestInternalId + 1]; const char *result; - if (type <= QMetaType::LastCoreExtType && ((result = namesCache[type]))) + if (type <= QMetaType::HighestInternalId && ((result = namesCache[type]))) return result; #define QT_METATYPE_TYPEID_TYPENAME_CONVERTER(MetaTypeName, TypeId, RealName) \ @@ -388,7 +387,7 @@ const char *QMetaType::typeName(int type) } #undef QT_METATYPE_TYPEID_TYPENAME_CONVERTER - Q_ASSERT(type <= QMetaType::LastCoreExtType); + Q_ASSERT(type <= QMetaType::HighestInternalId); namesCache[type] = result; return result; } diff --git a/src/corelib/kernel/qmetatype.h b/src/corelib/kernel/qmetatype.h index 5a55ca9..bbe4824 100644 --- a/src/corelib/kernel/qmetatype.h +++ b/src/corelib/kernel/qmetatype.h @@ -65,16 +65,16 @@ QT_BEGIN_NAMESPACE F(LongLong, 4, qlonglong) \ F(ULongLong, 5, qulonglong) \ F(Double, 6, double) \ - F(Long, 129, long) \ - F(Short, 130, short) \ - F(Char, 131, char) \ - F(ULong, 132, ulong) \ - F(UShort, 133, ushort) \ - F(UChar, 134, uchar) \ - F(Float, 135, float) \ + F(Long, 32, long) \ + F(Short, 33, short) \ + F(Char, 34, char) \ + F(ULong, 35, ulong) \ + F(UShort, 36, ushort) \ + F(UChar, 37, uchar) \ + F(Float, 38, float) \ #define QT_FOR_EACH_STATIC_PRIMITIVE_POINTER(F)\ - F(VoidStar, 128, void*) \ + F(VoidStar, 31, void*) \ #define QT_FOR_EACH_STATIC_CORE_CLASS(F)\ F(QChar, 7, QChar) \ @@ -98,12 +98,12 @@ QT_BEGIN_NAMESPACE F(QRegExp, 27, QRegExp) \ F(QEasingCurve, 29, QEasingCurve) \ F(QUuid, 30, QUuid) \ - F(QModelIndex, 31, QModelIndex) \ - F(QVariant, 138, QVariant) \ + F(QVariant, 41, QVariant) \ + F(QModelIndex, 42, QModelIndex) \ #define QT_FOR_EACH_STATIC_CORE_POINTER(F)\ - F(QObjectStar, 136, QObject*) \ - F(QWidgetStar, 137, QWidget*) \ + F(QObjectStar, 39, QObject*) \ + F(QWidgetStar, 40, QWidget*) \ #define QT_FOR_EACH_STATIC_CORE_TEMPLATE(F)\ F(QVariantMap, 8, QVariantMap) \ @@ -188,8 +188,7 @@ public: LastGuiType = QPolygonF, FirstWidgetsType = QIcon, LastWidgetsType = QSizePolicy, - FirstCoreExtType = VoidStar, - LastCoreExtType = QVariant, + HighestInternalId = LastWidgetsType, // This logic must match the one in qglobal.h #if defined(QT_COORD_TYPE) diff --git a/src/corelib/kernel/qmetatype_p.h b/src/corelib/kernel/qmetatype_p.h index e7a7ed8..45768bb 100644 --- a/src/corelib/kernel/qmetatype_p.h +++ b/src/corelib/kernel/qmetatype_p.h @@ -68,8 +68,6 @@ static inline int moduleForType(const int typeId) return Gui; if (typeId <= QMetaType::LastWidgetsType) return Widgets; - if (typeId <= QMetaType::LastCoreExtType) - return Core; return Unknown; } } diff --git a/src/corelib/kernel/qvariant.cpp b/src/corelib/kernel/qvariant.cpp index e0d1114..c14e6ff 100644 --- a/src/corelib/kernel/qvariant.cpp +++ b/src/corelib/kernel/qvariant.cpp @@ -1625,7 +1625,7 @@ QVariant::Type QVariant::nameToType(const char *name) #ifndef QT_NO_DATASTREAM enum { MapFromThreeCount = 36 }; -static const ushort map_from_three[MapFromThreeCount] = +static const ushort mapIdFromQt3ToCurrent[MapFromThreeCount] = { QVariant::Invalid, QVariant::Map, @@ -1675,26 +1675,45 @@ void QVariant::load(QDataStream &s) { clear(); - quint32 u; - s >> u; + quint32 typeId; + s >> typeId; if (s.version() < QDataStream::Qt_4_0) { - if (u >= MapFromThreeCount) + if (typeId >= MapFromThreeCount) return; - u = map_from_three[u]; + typeId = mapIdFromQt3ToCurrent[typeId]; + } else if (s.version() < QDataStream::Qt_5_0) { + if (typeId >= 128 && typeId != QVariant::UserType) { + // In Qt4 id == 128 was FirstExtCoreType. In Qt5 ExtCoreTypes set was merged to CoreTypes + // by moving all ids down by 97. + typeId -= 97; + } else if (typeId == 69 /* QIcon */) { + // In Qt5 after modularization project this types where moved to a separate module (and ids were downgraded) + typeId = QMetaType::QIcon; + } else if (typeId == 75 /* QSizePolicy */) { + typeId = QMetaType::QSizePolicy; + } else if (typeId >= 70) { + // and as a result this types recieved lower ids too + if (typeId <= 74) { // QImage QPolygon QRegion QBitmap QCursor + typeId -=1; + } else if (typeId <= 86) { // QKeySequence QPen QTextLength QTextFormat QMatrix QTransform QMatrix4x4 QVector2D QVector3D QVector4D QQuaternion + typeId -=2; + } + } } + qint8 is_null = false; if (s.version() >= QDataStream::Qt_4_2) s >> is_null; - if (u == QVariant::UserType) { + if (typeId == QVariant::UserType) { QByteArray name; s >> name; - u = QMetaType::type(name); - if (!u) { + typeId = QMetaType::type(name); + if (!typeId) { s.setStatus(QDataStream::ReadCorruptData); return; } } - create(static_cast(u), 0); + create(static_cast(typeId), 0); d.is_null = is_null; if (!isValid()) { @@ -1720,12 +1739,12 @@ void QVariant::load(QDataStream &s) */ void QVariant::save(QDataStream &s) const { - quint32 tp = type(); + quint32 typeId = type(); if (s.version() < QDataStream::Qt_4_0) { int i; for (i = MapFromThreeCount - 1; i >= 0; i--) { - if (map_from_three[i] == tp) { - tp = i; + if (mapIdFromQt3ToCurrent[i] == typeId) { + typeId = i; break; } } @@ -1733,11 +1752,29 @@ void QVariant::save(QDataStream &s) const s << QVariant(); return; } + } else if (s.version() < QDataStream::Qt_5_0) { + if (typeId >= 128 - 97 && typeId <= LastCoreType) { + // In Qt4 id == 128 was FirstExtCoreType. In Qt5 ExtCoreTypes set was merged to CoreTypes + // by moving all ids down by 97. + typeId += 97; + } else if (typeId == QMetaType::QIcon) { + // In Qt5 after modularization project this types where moved to a separate module (and ids were downgraded) + typeId = 69; + } else if (typeId == QMetaType::QSizePolicy) { + typeId = 75; + } else if (typeId >= QMetaType::QImage) { + // and as a result this types recieved lower ids too + if (typeId <= QMetaType::QCursor) { + typeId +=1; + } else if (typeId <= QMetaType::QQuaternion) { + typeId +=2; + } + } } - s << tp; + s << typeId; if (s.version() >= QDataStream::Qt_4_2) s << qint8(d.is_null); - if (tp == QVariant::UserType) { + if (typeId == QVariant::UserType) { s << QMetaType::typeName(userType()); } @@ -2411,17 +2448,15 @@ static const quint32 qCanConvertMatrix[QVariant::LastCoreType + 1] = */ bool QVariant::canConvert(Type t) const { - //we can treat floats as double - //the reason for not doing it the "proper" way is that QMetaType::Float's value is 135, - //which can't be handled by qCanConvertMatrix - //In addition QVariant::Type doesn't have a Float value, so we're using QMetaType::Float + // TODO Reimplement this function, currently it works but it is a historical mess. const uint currentType = ((d.type == QMetaType::Float) ? QVariant::Double : d.type); if (uint(t) == uint(QMetaType::Float)) t = QVariant::Double; if (currentType == uint(t)) return true; - if (currentType > QVariant::LastCoreType || t > QVariant::LastCoreType) { + // FIXME It should be LastCoreType intead of Uuid + if (currentType > QVariant::Uuid || t > QVariant::Uuid) { switch (uint(t)) { case QVariant::Int: return currentType == QVariant::KeySequence diff --git a/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp b/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp index 4f39af9..6aff143 100644 --- a/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp +++ b/tests/auto/corelib/io/qdatastream/tst_qdatastream.cpp @@ -255,7 +255,8 @@ static int NColorRoles[] = { QPalette::ToolTipText + 1, // Qt_4_4 QPalette::ToolTipText + 1, // Qt_4_5 QPalette::ToolTipText + 1, // Qt_4_6 - 0 // add the correct value for Qt_4_7 here later + QPalette::ToolTipText + 1, // Qt_5_0 + 0 // add the correct value for Qt_5_1 here later }; // Testing get/set functions diff --git a/tests/auto/corelib/kernel/qvariant/qvariant.pro b/tests/auto/corelib/kernel/qvariant/qvariant.pro index 93877a1..48229ee 100644 --- a/tests/auto/corelib/kernel/qvariant/qvariant.pro +++ b/tests/auto/corelib/kernel/qvariant/qvariant.pro @@ -2,5 +2,6 @@ CONFIG += testcase TARGET = tst_qvariant QT += widgets network testlib SOURCES = tst_qvariant.cpp +RESOURCES += qvariant.qrc mac: CONFIG += insignificant_test # QTBUG-QTBUG-22747 diff --git a/tests/auto/corelib/kernel/qvariant/qvariant.qrc b/tests/auto/corelib/kernel/qvariant/qvariant.qrc new file mode 100644 index 0000000..e6f7bda --- /dev/null +++ b/tests/auto/corelib/kernel/qvariant/qvariant.qrc @@ -0,0 +1,6 @@ + + + stream/qt4.9/ + stream/qt5.0/ + + diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/bool.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/bool.bin new file mode 100644 index 0000000..7929cb4 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/bool.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/char.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/char.bin new file mode 100644 index 0000000..3c15cb7 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/char.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/double.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/double.bin new file mode 100644 index 0000000..ac9ed17 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/double.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/float.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/float.bin new file mode 100644 index 0000000..540c010 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/float.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/int.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/int.bin new file mode 100644 index 0000000..6b47a9a Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/int.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/long.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/long.bin new file mode 100644 index 0000000..66891d5 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/long.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qbitarray.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qbitarray.bin new file mode 100644 index 0000000..e534174 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qbitarray.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qbitmap.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qbitmap.bin new file mode 100644 index 0000000..13f4dc3 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qbitmap.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qbrush.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qbrush.bin new file mode 100644 index 0000000..60ea8a2 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qbrush.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qbytearray.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qbytearray.bin new file mode 100644 index 0000000..1989781 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qbytearray.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qchar.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qchar.bin new file mode 100644 index 0000000..f4ef9df Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qchar.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qcolor.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qcolor.bin new file mode 100644 index 0000000..ba1c332 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qcolor.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qcursor.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qcursor.bin new file mode 100644 index 0000000..545fa96 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qcursor.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qdate.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qdate.bin new file mode 100644 index 0000000..d3281b1 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qdate.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qdatetime.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qdatetime.bin new file mode 100644 index 0000000..664eb73 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qdatetime.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qeasingcurve.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qeasingcurve.bin new file mode 100644 index 0000000..b9b9ea6 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qeasingcurve.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qfont.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qfont.bin new file mode 100644 index 0000000..76bc5d9 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qfont.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qicon.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qicon.bin new file mode 100644 index 0000000..2f87132 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qicon.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qimage.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qimage.bin new file mode 100644 index 0000000..0ab1cbf Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qimage.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qkeysequence.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qkeysequence.bin new file mode 100644 index 0000000..03db168 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qkeysequence.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qline.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qline.bin new file mode 100644 index 0000000..f1f5cde Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qline.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qlinef.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qlinef.bin new file mode 100644 index 0000000..4b1c2f0 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qlinef.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qlocale.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qlocale.bin new file mode 100644 index 0000000..44d9d1c Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qlocale.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qlonglong.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qlonglong.bin new file mode 100644 index 0000000..f1c297a Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qlonglong.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qmatrix.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qmatrix.bin new file mode 100644 index 0000000..fc88e25 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qmatrix.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qmatrix4x4.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qmatrix4x4.bin new file mode 100644 index 0000000..3a8b664 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qmatrix4x4.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpalette.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpalette.bin new file mode 100644 index 0000000..1ad9463 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpalette.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpen.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpen.bin new file mode 100644 index 0000000..1eff5c8 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpen.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpixmap.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpixmap.bin new file mode 100644 index 0000000..ce9cb8c Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpixmap.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpoint.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpoint.bin new file mode 100644 index 0000000..ca66b1e Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpoint.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpointf.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpointf.bin new file mode 100644 index 0000000..7aebb46 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpointf.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpolygon.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpolygon.bin new file mode 100644 index 0000000..fbdab8f Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qpolygon.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qquaternion.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qquaternion.bin new file mode 100644 index 0000000..01ee6dc Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qquaternion.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qrect.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qrect.bin new file mode 100644 index 0000000..70730db Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qrect.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qrectf.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qrectf.bin new file mode 100644 index 0000000..2f8dac6 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qrectf.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qregexp.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qregexp.bin new file mode 100644 index 0000000..db8518e Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qregexp.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qregion.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qregion.bin new file mode 100644 index 0000000..27eec8c Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qregion.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qsize.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qsize.bin new file mode 100644 index 0000000..fec8c62 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qsize.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qsizef.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qsizef.bin new file mode 100644 index 0000000..210976a Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qsizef.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qsizepolicy.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qsizepolicy.bin new file mode 100644 index 0000000..00f1b29 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qsizepolicy.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qstring.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qstring.bin new file mode 100644 index 0000000..f44d7cb Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qstring.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qstringlist.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qstringlist.bin new file mode 100644 index 0000000..34e6f73 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qstringlist.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qtextformat.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qtextformat.bin new file mode 100644 index 0000000..91382db Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qtextformat.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qtextlength.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qtextlength.bin new file mode 100644 index 0000000..945dfc0 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qtextlength.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qtime.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qtime.bin new file mode 100644 index 0000000..31f63fd Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qtime.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qtransform.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qtransform.bin new file mode 100644 index 0000000..53c4db5 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qtransform.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qulonglong.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qulonglong.bin new file mode 100644 index 0000000..e321e7d Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qulonglong.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qurl.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qurl.bin new file mode 100644 index 0000000..4e444b7 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qurl.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvariant.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvariant.bin new file mode 100644 index 0000000..7d5c530 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvariant.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvarianthash.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvarianthash.bin new file mode 100644 index 0000000..e2ffb00 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvarianthash.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvariantlist.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvariantlist.bin new file mode 100644 index 0000000..cf95d44 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvariantlist.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvariantmap.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvariantmap.bin new file mode 100644 index 0000000..6b0b1fb Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvariantmap.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvector2d.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvector2d.bin new file mode 100644 index 0000000..a219ab6 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvector2d.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvector3d.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvector3d.bin new file mode 100644 index 0000000..4444fb6 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvector3d.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvector4d.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvector4d.bin new file mode 100644 index 0000000..46bcc26 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/qvector4d.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/short.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/short.bin new file mode 100644 index 0000000..124776f Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/short.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/uchar.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/uchar.bin new file mode 100644 index 0000000..1dea2c1 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/uchar.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/uint.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/uint.bin new file mode 100644 index 0000000..086e080 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/uint.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/ulong.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/ulong.bin new file mode 100644 index 0000000..92dfdaa Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/ulong.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/ushort.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/ushort.bin new file mode 100644 index 0000000..d386a76 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/ushort.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt4.9/void.bin b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/void.bin new file mode 100644 index 0000000..7337dc7 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt4.9/void.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/bool.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/bool.bin new file mode 100644 index 0000000..7929cb4 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/bool.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/char.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/char.bin new file mode 100644 index 0000000..4422f29 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/char.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/double.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/double.bin new file mode 100644 index 0000000..ac9ed17 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/double.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/float.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/float.bin new file mode 100644 index 0000000..fc7cca7 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/float.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/int.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/int.bin new file mode 100644 index 0000000..6b47a9a Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/int.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/long.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/long.bin new file mode 100644 index 0000000..5a1ed0d Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/long.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qbitarray.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qbitarray.bin new file mode 100644 index 0000000..e534174 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qbitarray.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qbitmap.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qbitmap.bin new file mode 100644 index 0000000..511e260 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qbitmap.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qbrush.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qbrush.bin new file mode 100644 index 0000000..60ea8a2 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qbrush.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qbytearray.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qbytearray.bin new file mode 100644 index 0000000..1989781 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qbytearray.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qchar.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qchar.bin new file mode 100644 index 0000000..f4ef9df Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qchar.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qcolor.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qcolor.bin new file mode 100644 index 0000000..ba1c332 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qcolor.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qcursor.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qcursor.bin new file mode 100644 index 0000000..a7be10e Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qcursor.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qdate.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qdate.bin new file mode 100644 index 0000000..d3281b1 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qdate.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qdatetime.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qdatetime.bin new file mode 100644 index 0000000..664eb73 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qdatetime.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qeasingcurve.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qeasingcurve.bin new file mode 100644 index 0000000..5cf664e Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qeasingcurve.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qfont.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qfont.bin new file mode 100644 index 0000000..e8aa03a Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qfont.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qicon.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qicon.bin new file mode 100644 index 0000000..bf3ca9e Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qicon.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qimage.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qimage.bin new file mode 100644 index 0000000..03665c1 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qimage.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qkeysequence.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qkeysequence.bin new file mode 100644 index 0000000..7f7447a Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qkeysequence.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qline.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qline.bin new file mode 100644 index 0000000..f1f5cde Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qline.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qlinef.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qlinef.bin new file mode 100644 index 0000000..4b1c2f0 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qlinef.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qlocale.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qlocale.bin new file mode 100644 index 0000000..44d9d1c Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qlocale.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qlonglong.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qlonglong.bin new file mode 100644 index 0000000..f1c297a Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qlonglong.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qmatrix.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qmatrix.bin new file mode 100644 index 0000000..93434b4 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qmatrix.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qmatrix4x4.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qmatrix4x4.bin new file mode 100644 index 0000000..8d3f9b8 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qmatrix4x4.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpalette.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpalette.bin new file mode 100644 index 0000000..503c1a4 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpalette.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpen.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpen.bin new file mode 100644 index 0000000..edafc2d Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpen.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpixmap.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpixmap.bin new file mode 100644 index 0000000..ce9cb8c Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpixmap.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpoint.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpoint.bin new file mode 100644 index 0000000..ca66b1e Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpoint.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpointf.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpointf.bin new file mode 100644 index 0000000..7aebb46 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpointf.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpolygon.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpolygon.bin new file mode 100644 index 0000000..8d3275d Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpolygon.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpolygonf.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpolygonf.bin new file mode 100644 index 0000000..3e85997 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qpolygonf.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qquaternion.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qquaternion.bin new file mode 100644 index 0000000..c498f8f Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qquaternion.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qrect.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qrect.bin new file mode 100644 index 0000000..70730db Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qrect.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qrectf.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qrectf.bin new file mode 100644 index 0000000..2f8dac6 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qrectf.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qregexp.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qregexp.bin new file mode 100644 index 0000000..db8518e Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qregexp.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qregion.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qregion.bin new file mode 100644 index 0000000..ecf01a8 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qregion.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qsize.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qsize.bin new file mode 100644 index 0000000..fec8c62 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qsize.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qsizef.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qsizef.bin new file mode 100644 index 0000000..210976a Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qsizef.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qsizepolicy.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qsizepolicy.bin new file mode 100644 index 0000000..cfdf49b Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qsizepolicy.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qstring.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qstring.bin new file mode 100644 index 0000000..f44d7cb Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qstring.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qstringlist.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qstringlist.bin new file mode 100644 index 0000000..34e6f73 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qstringlist.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qtextformat.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qtextformat.bin new file mode 100644 index 0000000..432068d Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qtextformat.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qtextlength.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qtextlength.bin new file mode 100644 index 0000000..3b209f1 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qtextlength.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qtime.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qtime.bin new file mode 100644 index 0000000..31f63fd Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qtime.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qtransform.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qtransform.bin new file mode 100644 index 0000000..52cddb5 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qtransform.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qulonglong.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qulonglong.bin new file mode 100644 index 0000000..e321e7d Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qulonglong.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qurl.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qurl.bin new file mode 100644 index 0000000..4e444b7 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qurl.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/quuid.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/quuid.bin new file mode 100644 index 0000000..a8d57c6 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/quuid.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvariant.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvariant.bin new file mode 100644 index 0000000..1c8bc45 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvariant.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvarianthash.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvarianthash.bin new file mode 100644 index 0000000..e2ffb00 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvarianthash.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvariantlist.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvariantlist.bin new file mode 100644 index 0000000..cf95d44 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvariantlist.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvariantmap.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvariantmap.bin new file mode 100644 index 0000000..6b0b1fb Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvariantmap.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvector2d.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvector2d.bin new file mode 100644 index 0000000..2bc3aeb Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvector2d.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvector3d.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvector3d.bin new file mode 100644 index 0000000..b035f7f Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvector3d.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvector4d.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvector4d.bin new file mode 100644 index 0000000..a804c5e Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/qvector4d.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/short.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/short.bin new file mode 100644 index 0000000..e7ae61f Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/short.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/uchar.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/uchar.bin new file mode 100644 index 0000000..426f974 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/uchar.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/uint.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/uint.bin new file mode 100644 index 0000000..086e080 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/uint.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/ulong.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/ulong.bin new file mode 100644 index 0000000..399a9ea Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/ulong.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/ushort.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/ushort.bin new file mode 100644 index 0000000..25cb14e Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/ushort.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/stream/qt5.0/void.bin b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/void.bin new file mode 100644 index 0000000..7337dc7 Binary files /dev/null and b/tests/auto/corelib/kernel/qvariant/stream/qt5.0/void.bin differ diff --git a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp index f40b1ea..f88e795 100644 --- a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp +++ b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp @@ -262,6 +262,19 @@ private slots: void forwardDeclare(); void debugStream_data(); void debugStream(); + + void loadQt4Stream_data(); + void loadQt4Stream(); + void saveQt4Stream_data(); + void saveQt4Stream(); + void loadQt5Stream_data(); + void loadQt5Stream(); + void saveQt5Stream_data(); + void saveQt5Stream(); +private: + void dataStream_data(QDataStream::Version version); + void loadQVariantFromDataStream(QDataStream::Version version); + void saveQVariantFromDataStream(QDataStream::Version version); }; Q_DECLARE_METATYPE(QDate) @@ -2003,13 +2016,6 @@ Q_DECLARE_METATYPE(MyType*) void tst_QVariant::userType() { { - QVariant userVariant(QVariant::UserType); - - QVERIFY(userVariant.isValid()); - QVERIFY(userVariant.isNull()); - } - - { MyType data(1, "eins"); MyType data2(2, "zwei"); @@ -3338,6 +3344,123 @@ void tst_QVariant::forwardDeclare() QCOMPARE(qvariant_cast(v), f); } +void tst_QVariant::loadQt5Stream_data() +{ + dataStream_data(QDataStream::Qt_5_0); +} + +void tst_QVariant::loadQt5Stream() +{ + loadQVariantFromDataStream(QDataStream::Qt_5_0); +} + +void tst_QVariant::saveQt5Stream_data() +{ + dataStream_data(QDataStream::Qt_5_0); +} + +void tst_QVariant::saveQt5Stream() +{ + saveQVariantFromDataStream(QDataStream::Qt_5_0); +} + +void tst_QVariant::loadQt4Stream_data() +{ + dataStream_data(QDataStream::Qt_4_9); +} + +void tst_QVariant::loadQt4Stream() +{ + loadQVariantFromDataStream(QDataStream::Qt_4_9); +} + +void tst_QVariant::saveQt4Stream_data() +{ + dataStream_data(QDataStream::Qt_4_9); +} + +void tst_QVariant::saveQt4Stream() +{ + saveQVariantFromDataStream(QDataStream::Qt_4_9); +} + +void tst_QVariant::dataStream_data(QDataStream::Version version) +{ + QTest::addColumn("fileName"); + + QString path; + switch (version) { + case QDataStream::Qt_4_9: + path = QString::fromLatin1("qt4.9"); + break; + case QDataStream::Qt_5_0: + path = QString::fromLatin1("qt5.0"); + break; + default: + Q_UNIMPLEMENTED(); + } + + path = path.prepend(":/stream/").append("/"); + QDir dir(path); + uint i = 0; + foreach (const QFileInfo &fileInfo, dir.entryInfoList(QStringList() << "*.bin")) { + QTest::newRow((path + fileInfo.fileName()).toLatin1()) << fileInfo.filePath(); + i += 1; + } + QVERIFY(i > 10); +} + +void tst_QVariant::loadQVariantFromDataStream(QDataStream::Version version) +{ + QFETCH(QString, fileName); + + QFile file(fileName); + QVERIFY(file.open(QIODevice::ReadOnly)); + + QDataStream stream(&file); + stream.setVersion(version); + + QString typeName; + QVariant loadedVariant; + stream >> typeName >> loadedVariant; + + const int id = QMetaType::type(typeName.toLatin1()); + QVariant constructedVariant(static_cast(id)); + QCOMPARE(constructedVariant.userType(), id); + QCOMPARE(QMetaType::typeName(loadedVariant.userType()), typeName.toLatin1().constData()); + QCOMPARE(loadedVariant.userType(), constructedVariant.userType()); +} + +void tst_QVariant::saveQVariantFromDataStream(QDataStream::Version version) +{ + QFETCH(QString, fileName); + + QFile file(fileName); + QVERIFY(file.open(QIODevice::ReadOnly)); + QDataStream dataFileStream(&file); + + QString typeName; + dataFileStream >> typeName; + QByteArray data = file.readAll(); + const int id = QMetaType::type(typeName.toLatin1()); + + QBuffer buffer; + buffer.open(QIODevice::ReadWrite); + QDataStream stream(&buffer); + stream.setVersion(version); + + QVariant constructedVariant(static_cast(id)); + QCOMPARE(constructedVariant.userType(), id); + stream << constructedVariant; + + // We are testing QVariant there is no point in testing full array. + QCOMPARE(buffer.data().left(5), data.left(5)); + + buffer.seek(0); + QVariant recunstructedVariant; + stream >> recunstructedVariant; + QCOMPARE(recunstructedVariant.userType(), constructedVariant.userType()); +} class MessageHandler { public: @@ -3397,6 +3520,5 @@ void tst_QVariant::debugStream() QVERIFY(msgHandler.testPassed()); } - QTEST_MAIN(tst_QVariant) #include "tst_qvariant.moc" diff --git a/tests/benchmarks/corelib/kernel/qmetatype/tst_qmetatype.cpp b/tests/benchmarks/corelib/kernel/qmetatype/tst_qmetatype.cpp index 2faacc2..558604e 100644 --- a/tests/benchmarks/corelib/kernel/qmetatype/tst_qmetatype.cpp +++ b/tests/benchmarks/corelib/kernel/qmetatype/tst_qmetatype.cpp @@ -242,8 +242,6 @@ void tst_QMetaType::constructCoreType_data() QTest::addColumn("typeId"); for (int i = 0; i <= QMetaType::LastCoreType; ++i) QTest::newRow(QMetaType::typeName(i)) << i; - for (int i = QMetaType::FirstCoreExtType; i <= QMetaType::LastCoreExtType; ++i) - QTest::newRow(QMetaType::typeName(i)) << i; // GUI types are tested in tst_QGuiMetaType. } diff --git a/tests/benchmarks/corelib/kernel/qvariant/tst_qvariant.cpp b/tests/benchmarks/corelib/kernel/qvariant/tst_qvariant.cpp index 8f0a331..52999c1 100644 --- a/tests/benchmarks/corelib/kernel/qvariant/tst_qvariant.cpp +++ b/tests/benchmarks/corelib/kernel/qvariant/tst_qvariant.cpp @@ -307,8 +307,6 @@ void tst_qvariant::createCoreType_data() QTest::addColumn("typeId"); for (int i = 0; i <= QMetaType::LastCoreType; ++i) QTest::newRow(QMetaType::typeName(i)) << i; - for (int i = QMetaType::FirstCoreExtType; i <= QMetaType::LastCoreExtType; ++i) - QTest::newRow(QMetaType::typeName(i)) << i; } // Tests how fast a Qt core type can be default-constructed by a