diff options
author | Fabian Kosmale <fabian.kosmale@qt.io> | 2021-03-16 09:27:50 +0100 |
---|---|---|
committer | Qt CI Bot <qt_ci_bot@qt-project.org> | 2021-03-17 11:56:37 +0000 |
commit | 253485425725736a5ea71de911beecddbd17987e (patch) | |
tree | e337f89f5be7ecc2cb26123246f18b93fc3882d1 | |
parent | 35ca446e3bc32fd51c01abe46b94ef53ddb62d0f (diff) | |
parent | a7f24218e3795aa54effc2665e0a505c02b10382 (diff) |
Merge "tst_qguimetatype: Avoid deprecated methods"
-rw-r--r-- | tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp | 35 |
1 files changed, 21 insertions, 14 deletions
diff --git a/tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp b/tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp index 6568307461..8eca4b71d0 100644 --- a/tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp +++ b/tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp @@ -28,6 +28,7 @@ #include <qtest.h> #include <QtCore/qmetatype.h> +#include <QScopeGuard> class tst_QGuiMetaType : public QObject { @@ -62,17 +63,20 @@ void tst_QGuiMetaType::constructInPlace_data() void tst_QGuiMetaType::constructInPlace() { QFETCH(int, typeId); - int size = QMetaType::sizeOf(typeId); + QMetaType type(typeId); + int size = type.sizeOf(); void *storage = qMallocAligned(size, 2 * sizeof(qlonglong)); - QCOMPARE(QMetaType::construct(typeId, storage, /*copy=*/0), storage); - QMetaType::destruct(typeId, storage); + auto cleanUp = qScopeGuard([&]() { + qFreeAligned(storage); + }); + QCOMPARE(type.construct(storage, /*copy=*/0), storage); + type.destruct(storage); QBENCHMARK { for (int i = 0; i < 100000; ++i) { - QMetaType::construct(typeId, storage, /*copy=*/0); - QMetaType::destruct(typeId, storage); + type.construct(storage, /*copy=*/0); + type.destruct(storage); } } - qFreeAligned(storage); } void tst_QGuiMetaType::constructInPlaceCopy_data() @@ -83,19 +87,22 @@ void tst_QGuiMetaType::constructInPlaceCopy_data() void tst_QGuiMetaType::constructInPlaceCopy() { QFETCH(int, typeId); - int size = QMetaType::sizeOf(typeId); + QMetaType type(typeId); + int size = type.sizeOf(); void *storage = qMallocAligned(size, 2 * sizeof(qlonglong)); - void *other = QMetaType::create(typeId); - QCOMPARE(QMetaType::construct(typeId, storage, other), storage); - QMetaType::destruct(typeId, storage); + void *other = type.create(); + auto cleanUp = qScopeGuard([&]() { + type.destroy(other); + qFreeAligned(storage); + }); + QCOMPARE(type.construct(storage, other), storage); + type.destruct(storage); QBENCHMARK { for (int i = 0; i < 100000; ++i) { - QMetaType::construct(typeId, storage, other); - QMetaType::destruct(typeId, storage); + type.construct(storage, other); + type.destruct(storage); } } - QMetaType::destroy(typeId, other); - qFreeAligned(storage); } QTEST_MAIN(tst_QGuiMetaType) |