From 9c501b0670ec1b0a22255c6646c193c1b366c284 Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Tue, 14 Jul 2020 22:35:47 +0200 Subject: Remove an unused enum value and document another one Change-Id: If9fed4f20242d789c1251b8798d7378d2d6911a6 Reviewed-by: Thiago Macieira --- .../corelib/kernel/qmetatype/tst_qmetatype.cpp | 53 +++++++++++---------- tests/auto/corelib/kernel/qmetatype/typeFlags.bin | Bin 106 -> 452 bytes 2 files changed, 27 insertions(+), 26 deletions(-) (limited to 'tests/auto/corelib/kernel/qmetatype') diff --git a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp index 6f844e2fb4..9ecad3bdf6 100644 --- a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp +++ b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp @@ -203,8 +203,8 @@ private slots: void flags(); void flagsStaticLess_data(); void flagsStaticLess(); - void flagsBinaryCompatibility5_0_data(); - void flagsBinaryCompatibility5_0(); + void flagsBinaryCompatibility6_0_data(); + void flagsBinaryCompatibility6_0(); void construct_data(); void construct(); void typedConstruct(); @@ -411,7 +411,7 @@ void tst_QMetaType::registerGadget(const char *name, const QListd.static_metacall = &GadgetsStaticMetacallFunction; meta->d.superdata = nullptr; - const auto flags = QMetaType::WasDeclaredAsMetaType | QMetaType::IsGadget | QMetaType::NeedsConstruction | QMetaType::NeedsDestruction; + const auto flags = QMetaType::IsGadget | QMetaType::NeedsConstruction | QMetaType::NeedsDestruction; using TypeInfo = QtPrivate::QMetaTypeInterface; auto typeInfo = new TypeInfo { 0, sizeof(GenericGadgetType), alignof(GenericGadgetType), uint(flags), meta, name, 0, @@ -1133,46 +1133,47 @@ void tst_QMetaType::flagsStaticLess() QCOMPARE(bool(flags & QMetaType::MovableType), isMovable); } -void tst_QMetaType::flagsBinaryCompatibility5_0_data() -{ - // Changing traits of a built-in type is illegal from BC point of view. - // Traits are saved in code of an application and in the Qt library which means - // that there may be a mismatch. - // The test is loading data generated by this code: - // - // QByteArray buffer; - // buffer.reserve(2 * QMetaType::User); - // for (quint32 i = 0; i < QMetaType::User; ++i) { - // if (QMetaType::isRegistered(i)) { - // buffer.append(i); - // buffer.append(quint32(QMetaType::typeFlags(i))); - // } - // } - // QFile file("/tmp/typeFlags.bin"); - // file.open(QIODevice::WriteOnly); - // file.write(buffer); - // file.close(); +void tst_QMetaType::flagsBinaryCompatibility6_0_data() +{ +// Changing traits of a built-in type is illegal from BC point of view. +// Traits are saved in code of an application and in the Qt library which means +// that there may be a mismatch. +// The test is loading data generated by this code: +// +// QList buffer; +// buffer.reserve(2 * QMetaType::User); +// for (quint32 i = 0; i < QMetaType::LastCoreType; ++i) { +// if (QMetaType::isRegistered(i)) { +// buffer.append(i); +// buffer.append(quint32(QMetaType::typeFlags(i))); +// } +// } +// QFile file("/tmp/typeFlags.bin"); +// file.open(QIODevice::WriteOnly); +// QDataStream ds(&file); +// ds << buffer; +// file.close(); QTest::addColumn("id"); QTest::addColumn("flags"); QFile file(QFINDTESTDATA("typeFlags.bin")); file.open(QIODevice::ReadOnly); - QByteArray buffer = file.readAll(); + QList buffer; + QDataStream ds(&file); + ds >> buffer; for (int i = 0; i < buffer.size(); i+=2) { const quint32 id = buffer.at(i); const quint32 flags = buffer.at(i + 1); if (id > QMetaType::LastCoreType) continue; // We do not link against QtGui, so we do longer consider such type as registered - if (id == QMetaType::Void) - continue; // The meaning of QMetaType::Void has changed in Qt6 QVERIFY2(QMetaType::isRegistered(id), "A type could not be removed in BC way"); QTest::newRow(QMetaType::typeName(id)) << id << flags; } } -void tst_QMetaType::flagsBinaryCompatibility5_0() +void tst_QMetaType::flagsBinaryCompatibility6_0() { QFETCH(quint32, id); QFETCH(quint32, flags); diff --git a/tests/auto/corelib/kernel/qmetatype/typeFlags.bin b/tests/auto/corelib/kernel/qmetatype/typeFlags.bin index 35d922a85c..7d5d9c7a50 100644 Binary files a/tests/auto/corelib/kernel/qmetatype/typeFlags.bin and b/tests/auto/corelib/kernel/qmetatype/typeFlags.bin differ -- cgit v1.2.3