summaryrefslogtreecommitdiffstats
path: root/tests/auto
diff options
context:
space:
mode:
authorIvan Solovev <ivan.solovev@qt.io>2020-12-14 12:27:53 +0100
committerIvan Solovev <ivan.solovev@qt.io>2021-04-21 15:34:28 +0200
commit1a65a4faf52f83ba3fbbba88cea1c4bb800e8de7 (patch)
tree3873a758298aba37faade1b1cd60c755815eae1c /tests/auto
parent696f5ffc64ac90e92520fd8cf9e8313fe80e3b76 (diff)
QObject: port to new property system
Extended QObjectPrivate::ExtraData to store a pointer to its parent, and reimplemented qGetBindingStorage() function for QObjectPrivate::ExtraData. This allows to use Q_OBJECT_COMPAT_PROPERTY macro for a property, stored in QObjectPrivate::ExtraData and solves all the problems with calling a custom setter. Task-number: QTBUG-85520 Change-Id: I40e01c29430846359ef9160fa1ae97c702be9a18 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
Diffstat (limited to 'tests/auto')
-rw-r--r--tests/auto/corelib/kernel/qobject/CMakeLists.txt3
-rw-r--r--tests/auto/corelib/kernel/qobject/tst_qobject.cpp11
-rw-r--r--tests/auto/other/toolsupport/tst_toolsupport.cpp2
3 files changed, 13 insertions, 3 deletions
diff --git a/tests/auto/corelib/kernel/qobject/CMakeLists.txt b/tests/auto/corelib/kernel/qobject/CMakeLists.txt
index 7ff42f7212..a231ef985f 100644
--- a/tests/auto/corelib/kernel/qobject/CMakeLists.txt
+++ b/tests/auto/corelib/kernel/qobject/CMakeLists.txt
@@ -9,9 +9,10 @@ qt_internal_add_test(tst_qobject
tst_qobject.cpp
DEFINES
QT_DISABLE_DEPRECATED_BEFORE=0
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::CorePrivate
Qt::Network
+ Qt::TestPrivate
)
## Scopes:
diff --git a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp
index f36a40e5df..f5c16faa56 100644
--- a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp
+++ b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2016 The Qt Company Ltd.
+** Copyright (C) 2021 The Qt Company Ltd.
** Copyright (C) 2015 Olivier Goffart <ogoffart@woboq.com>
** Contact: https://www.qt.io/licensing/
**
@@ -28,6 +28,7 @@
****************************************************************************/
#include <QTest>
+#include <QtTest/private/qpropertytesthelper_p.h>
#include <QStringListModel>
#include <QAbstractEventDispatcher>
#include <QScopedValueRollback>
@@ -161,6 +162,7 @@ private slots:
void functorReferencesConnection();
void disconnectDisconnects();
void singleShotConnection();
+ void objectNameBinding();
};
struct QObjectCreatedOnShutdown
@@ -8115,6 +8117,13 @@ void tst_QObject::singleShotConnection()
}
}
+void tst_QObject::objectNameBinding()
+{
+ QObject obj;
+ QTestPrivate::testReadWritePropertyBasics<QObject, QString>(obj, "test1", "test2",
+ "objectName");
+}
+
// Test for QtPrivate::HasQ_OBJECT_Macro
static_assert(QtPrivate::HasQ_OBJECT_Macro<tst_QObject>::Value);
static_assert(!QtPrivate::HasQ_OBJECT_Macro<SiblingDeleter>::Value);
diff --git a/tests/auto/other/toolsupport/tst_toolsupport.cpp b/tests/auto/other/toolsupport/tst_toolsupport.cpp
index 2e46f022e7..7ba4286a4d 100644
--- a/tests/auto/other/toolsupport/tst_toolsupport.cpp
+++ b/tests/auto/other/toolsupport/tst_toolsupport.cpp
@@ -109,7 +109,7 @@ void tst_toolsupport::offsets_data()
QTestData &data = QTest::newRow("sizeof(QObjectPrivate::ExtraData)")
<< sizeof(QObjectPrivate::ExtraData);
// Please heed the comment at the top of this file when changing this line:
- data << 60 << 120; // 4 * QList + 1 * QString
+ data << 64 << 128; // 4 * QList + 1 * QString + ptr
}
#if RUN_MEMBER_OFFSET_TEST