tst_qobject: port away from deprecated methods
The patch includes the following replacements: * QMetaType::type("name") -> QMetaType::fromType<Type>().id() * QMetaProperty::type() -> QMetaProperty::typeId() * QVariant::Type -> QMetaType::Type * qRegisterMetaType<T>("name") -> qResigeterMetaType<T>() * The static QMetaType::{load,save} methods are replaced with non-static versions * Replace QCOMPARE(property.type(), QVariant::UserType) with QCOMPARE_GT(property.typeId(), QMetaType::User), because the deprecated type() method was treating each custom type (id >= QVariant::UserType) as QVariant::UserType, while the typeId() method simply returns the actual id. As a drive-by: remove unneeded QMetaType registration tests as we have tst_QMetaType to check it. Task-number: QTBUG-104858 Change-Id: Ia08e002efdf07ff83366a5193164dba96a956f9a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
parent
ad12d779cc
commit
95542b386a
@ -10,8 +10,6 @@
|
|||||||
qt_internal_add_test(tst_qobject
|
qt_internal_add_test(tst_qobject
|
||||||
SOURCES
|
SOURCES
|
||||||
tst_qobject.cpp
|
tst_qobject.cpp
|
||||||
DEFINES
|
|
||||||
QT_DISABLE_DEPRECATED_UP_TO=0
|
|
||||||
LIBRARIES
|
LIBRARIES
|
||||||
Qt::CorePrivate
|
Qt::CorePrivate
|
||||||
Qt::Network
|
Qt::Network
|
||||||
|
@ -1481,8 +1481,7 @@ void tst_QObject::customTypes()
|
|||||||
QCOMPARE(checker.received.value(), t1.value());
|
QCOMPARE(checker.received.value(), t1.value());
|
||||||
checker.received = t0;
|
checker.received = t0;
|
||||||
|
|
||||||
int idx = qRegisterMetaType<CustomType>("CustomType");
|
qRegisterMetaType<CustomType>();
|
||||||
QCOMPARE(QMetaType::type("CustomType"), idx);
|
|
||||||
|
|
||||||
checker.disconnect();
|
checker.disconnect();
|
||||||
connect(&checker, SIGNAL(signal1(CustomType)), &checker, SLOT(slot1(CustomType)),
|
connect(&checker, SIGNAL(signal1(CustomType)), &checker, SLOT(slot1(CustomType)),
|
||||||
@ -1495,11 +1494,6 @@ void tst_QObject::customTypes()
|
|||||||
QCoreApplication::processEvents();
|
QCoreApplication::processEvents();
|
||||||
QCOMPARE(checker.received.value(), t2.value());
|
QCOMPARE(checker.received.value(), t2.value());
|
||||||
QCOMPARE(instanceCount, 4);
|
QCOMPARE(instanceCount, 4);
|
||||||
|
|
||||||
QVERIFY(QMetaType::isRegistered(idx));
|
|
||||||
QCOMPARE(qRegisterMetaType<CustomType>("CustomType"), idx);
|
|
||||||
QCOMPARE(QMetaType::type("CustomType"), idx);
|
|
||||||
QVERIFY(QMetaType::isRegistered(idx));
|
|
||||||
}
|
}
|
||||||
QCOMPARE(instanceCount, 3);
|
QCOMPARE(instanceCount, 3);
|
||||||
}
|
}
|
||||||
@ -1508,13 +1502,15 @@ void tst_QObject::streamCustomTypes()
|
|||||||
{
|
{
|
||||||
QByteArray ba;
|
QByteArray ba;
|
||||||
|
|
||||||
int idx = qRegisterMetaType<CustomType>("CustomType");
|
qRegisterMetaType<CustomType>();
|
||||||
|
|
||||||
|
QMetaType metaType = QMetaType::fromType<CustomType>();
|
||||||
|
|
||||||
{
|
{
|
||||||
CustomType t1(1, 2, 3);
|
CustomType t1(1, 2, 3);
|
||||||
QCOMPARE(instanceCount, 1);
|
QCOMPARE(instanceCount, 1);
|
||||||
QDataStream stream(&ba, (QIODevice::OpenMode)QIODevice::WriteOnly);
|
QDataStream stream(&ba, (QIODevice::OpenMode)QIODevice::WriteOnly);
|
||||||
QMetaType::save(stream, idx, &t1);
|
metaType.save(stream, &t1);
|
||||||
}
|
}
|
||||||
|
|
||||||
QCOMPARE(instanceCount, 0);
|
QCOMPARE(instanceCount, 0);
|
||||||
@ -1523,7 +1519,7 @@ void tst_QObject::streamCustomTypes()
|
|||||||
CustomType t2;
|
CustomType t2;
|
||||||
QCOMPARE(instanceCount, 1);
|
QCOMPARE(instanceCount, 1);
|
||||||
QDataStream stream(&ba, (QIODevice::OpenMode)QIODevice::ReadOnly);
|
QDataStream stream(&ba, (QIODevice::OpenMode)QIODevice::ReadOnly);
|
||||||
QMetaType::load(stream, idx, &t2);
|
metaType.load(stream, &t2);
|
||||||
QCOMPARE(instanceCount, 1);
|
QCOMPARE(instanceCount, 1);
|
||||||
QCOMPARE(t2.i1, 1);
|
QCOMPARE(t2.i1, 1);
|
||||||
QCOMPARE(t2.i2, 2);
|
QCOMPARE(t2.i2, 2);
|
||||||
@ -1959,7 +1955,7 @@ void tst_QObject::property()
|
|||||||
|
|
||||||
const int idx = mo->indexOfProperty("variant");
|
const int idx = mo->indexOfProperty("variant");
|
||||||
QVERIFY(idx != -1);
|
QVERIFY(idx != -1);
|
||||||
QCOMPARE(QMetaType::Type(mo->property(idx).type()), QMetaType::QVariant);
|
QCOMPARE(mo->property(idx).userType(), QMetaType::QVariant);
|
||||||
QCOMPARE(object.property("variant"), QVariant());
|
QCOMPARE(object.property("variant"), QVariant());
|
||||||
QVariant variant1(42);
|
QVariant variant1(42);
|
||||||
QVariant variant2("string");
|
QVariant variant2("string");
|
||||||
@ -1978,7 +1974,7 @@ void tst_QObject::property()
|
|||||||
QVERIFY(!property.isEnumType());
|
QVERIFY(!property.isEnumType());
|
||||||
QCOMPARE(property.typeName(), "CustomType*");
|
QCOMPARE(property.typeName(), "CustomType*");
|
||||||
qRegisterMetaType<CustomType*>();
|
qRegisterMetaType<CustomType*>();
|
||||||
QCOMPARE(property.type(), QVariant::UserType);
|
QCOMPARE_GE(property.typeId(), QMetaType::User);
|
||||||
QCOMPARE(property.userType(), qMetaTypeId<CustomType*>());
|
QCOMPARE(property.userType(), qMetaTypeId<CustomType*>());
|
||||||
|
|
||||||
CustomType *customPointer = nullptr;
|
CustomType *customPointer = nullptr;
|
||||||
@ -1993,7 +1989,7 @@ void tst_QObject::property()
|
|||||||
property = mo->property(mo->indexOfProperty("custom"));
|
property = mo->property(mo->indexOfProperty("custom"));
|
||||||
QVERIFY(property.isWritable());
|
QVERIFY(property.isWritable());
|
||||||
QCOMPARE(property.typeName(), "CustomType*");
|
QCOMPARE(property.typeName(), "CustomType*");
|
||||||
QCOMPARE(property.type(), QVariant::UserType);
|
QCOMPARE_GE(property.typeId(), QMetaType::User);
|
||||||
QCOMPARE(property.userType(), qMetaTypeId<CustomType*>());
|
QCOMPARE(property.userType(), qMetaTypeId<CustomType*>());
|
||||||
|
|
||||||
QVERIFY(object.setProperty("custom", customVariant));
|
QVERIFY(object.setProperty("custom", customVariant));
|
||||||
@ -2023,13 +2019,13 @@ void tst_QObject::property()
|
|||||||
QCOMPARE(object.property("priority").toInt(), 0);
|
QCOMPARE(object.property("priority").toInt(), 0);
|
||||||
|
|
||||||
// now it's registered, so it works as expected
|
// now it's registered, so it works as expected
|
||||||
int priorityMetaTypeId = qRegisterMetaType<PropertyObject::Priority>("PropertyObject::Priority");
|
int priorityMetaTypeId = qRegisterMetaType<PropertyObject::Priority>();
|
||||||
|
|
||||||
QVERIFY(mo->indexOfProperty("priority") != -1);
|
QVERIFY(mo->indexOfProperty("priority") != -1);
|
||||||
property = mo->property(mo->indexOfProperty("priority"));
|
property = mo->property(mo->indexOfProperty("priority"));
|
||||||
QVERIFY(property.isEnumType());
|
QVERIFY(property.isEnumType());
|
||||||
QCOMPARE(property.typeName(), "PropertyObject::Priority");
|
QCOMPARE(property.typeName(), "PropertyObject::Priority");
|
||||||
QCOMPARE(property.type(), QVariant::UserType);
|
QCOMPARE_GE(property.typeId(), QMetaType::User);
|
||||||
QCOMPARE(property.userType(), priorityMetaTypeId);
|
QCOMPARE(property.userType(), priorityMetaTypeId);
|
||||||
|
|
||||||
var = object.property("priority");
|
var = object.property("priority");
|
||||||
@ -2052,7 +2048,7 @@ void tst_QObject::property()
|
|||||||
object.setProperty("priority", var);
|
object.setProperty("priority", var);
|
||||||
QCOMPARE(qvariant_cast<PropertyObject::Priority>(object.property("priority")), PropertyObject::High);
|
QCOMPARE(qvariant_cast<PropertyObject::Priority>(object.property("priority")), PropertyObject::High);
|
||||||
|
|
||||||
qRegisterMetaType<CustomString>("CustomString");
|
qRegisterMetaType<CustomString>();
|
||||||
QVERIFY(mo->indexOfProperty("customString") != -1);
|
QVERIFY(mo->indexOfProperty("customString") != -1);
|
||||||
QCOMPARE(object.property("customString").toString(), QString());
|
QCOMPARE(object.property("customString").toString(), QString());
|
||||||
object.setCustomString("String1");
|
object.setCustomString("String1");
|
||||||
@ -2891,7 +2887,7 @@ void tst_QObject::floatProperty()
|
|||||||
QVERIFY(idx > 0);
|
QVERIFY(idx > 0);
|
||||||
QMetaProperty prop = obj.metaObject()->property(idx);
|
QMetaProperty prop = obj.metaObject()->property(idx);
|
||||||
QVERIFY(prop.isValid());
|
QVERIFY(prop.isValid());
|
||||||
QCOMPARE(int(prop.type()), QMetaType::type("float"));
|
QCOMPARE(prop.typeId(), QMetaType::fromType<float>().id());
|
||||||
QVERIFY(!prop.write(&obj, QVariant("Hello")));
|
QVERIFY(!prop.write(&obj, QVariant("Hello")));
|
||||||
QVERIFY(prop.write(&obj, QVariant::fromValue(128.0f)));
|
QVERIFY(prop.write(&obj, QVariant::fromValue(128.0f)));
|
||||||
QVariant v = prop.read(&obj);
|
QVariant v = prop.read(&obj);
|
||||||
@ -2906,7 +2902,7 @@ void tst_QObject::qrealProperty()
|
|||||||
QVERIFY(idx > 0);
|
QVERIFY(idx > 0);
|
||||||
QMetaProperty prop = obj.metaObject()->property(idx);
|
QMetaProperty prop = obj.metaObject()->property(idx);
|
||||||
QVERIFY(prop.isValid());
|
QVERIFY(prop.isValid());
|
||||||
QCOMPARE(int(prop.type()), QMetaType::type("qreal"));
|
QCOMPARE(prop.typeId(), QMetaType::fromType<qreal>().id());
|
||||||
QVERIFY(!prop.write(&obj, QVariant("Hello")));
|
QVERIFY(!prop.write(&obj, QVariant("Hello")));
|
||||||
|
|
||||||
QVERIFY(prop.write(&obj, QVariant::fromValue(128.0f)));
|
QVERIFY(prop.write(&obj, QVariant::fromValue(128.0f)));
|
||||||
@ -2957,7 +2953,7 @@ void tst_QObject::dynamicProperties()
|
|||||||
QVERIFY(!obj.setProperty("myuserproperty", "Hello"));
|
QVERIFY(!obj.setProperty("myuserproperty", "Hello"));
|
||||||
QCOMPARE(obj.changedDynamicProperties.count(), 1);
|
QCOMPARE(obj.changedDynamicProperties.count(), 1);
|
||||||
|
|
||||||
QCOMPARE(obj.property("myuserproperty").type(), QVariant::String);
|
QCOMPARE(obj.property("myuserproperty").typeId(), QMetaType::QString);
|
||||||
QCOMPARE(obj.property("myuserproperty").toString(), QString("Hello"));
|
QCOMPARE(obj.property("myuserproperty").toString(), QString("Hello"));
|
||||||
|
|
||||||
QCOMPARE(obj.dynamicPropertyNames().count(), 1);
|
QCOMPARE(obj.dynamicPropertyNames().count(), 1);
|
||||||
@ -2968,7 +2964,7 @@ void tst_QObject::dynamicProperties()
|
|||||||
QVERIFY(!obj.setProperty("myuserproperty", QByteArray("Hello")));
|
QVERIFY(!obj.setProperty("myuserproperty", QByteArray("Hello")));
|
||||||
QCOMPARE(obj.changedDynamicProperties.count(), 1);
|
QCOMPARE(obj.changedDynamicProperties.count(), 1);
|
||||||
QCOMPARE(obj.changedDynamicProperties.first(), QByteArray("myuserproperty"));
|
QCOMPARE(obj.changedDynamicProperties.first(), QByteArray("myuserproperty"));
|
||||||
QCOMPARE(obj.property("myuserproperty").type(), QVariant::ByteArray);
|
QCOMPARE(obj.property("myuserproperty").typeId(), QMetaType::QByteArray);
|
||||||
QCOMPARE(obj.property("myuserproperty").toString(), QByteArray("Hello"));
|
QCOMPARE(obj.property("myuserproperty").toString(), QByteArray("Hello"));
|
||||||
|
|
||||||
// unset the property
|
// unset the property
|
||||||
@ -4702,8 +4698,7 @@ void tst_QObject::customTypesPointer()
|
|||||||
|
|
||||||
checker.disconnect();
|
checker.disconnect();
|
||||||
|
|
||||||
int idx = qRegisterMetaType<CustomType>("CustomType");
|
qRegisterMetaType<CustomType>();
|
||||||
QCOMPARE(QMetaType::type("CustomType"), idx);
|
|
||||||
|
|
||||||
connect(&checker, &QCustomTypeChecker::signal1, &checker, &QCustomTypeChecker::slot1,
|
connect(&checker, &QCustomTypeChecker::signal1, &checker, &QCustomTypeChecker::slot1,
|
||||||
Qt::QueuedConnection);
|
Qt::QueuedConnection);
|
||||||
@ -4716,11 +4711,6 @@ void tst_QObject::customTypesPointer()
|
|||||||
QCOMPARE(checker.received.value(), t2.value());
|
QCOMPARE(checker.received.value(), t2.value());
|
||||||
QCOMPARE(instanceCount, 4);
|
QCOMPARE(instanceCount, 4);
|
||||||
|
|
||||||
QVERIFY(QMetaType::isRegistered(idx));
|
|
||||||
QCOMPARE(qRegisterMetaType<CustomType>("CustomType"), idx);
|
|
||||||
QCOMPARE(QMetaType::type("CustomType"), idx);
|
|
||||||
QVERIFY(QMetaType::isRegistered(idx));
|
|
||||||
|
|
||||||
// Test auto registered type (QList<CustomType>)
|
// Test auto registered type (QList<CustomType>)
|
||||||
QList<CustomType> list;
|
QList<CustomType> list;
|
||||||
QCOMPARE(instanceCount, 4);
|
QCOMPARE(instanceCount, 4);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user