aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside6/tests/QtCore/qobject_parent_test.py
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2021-06-14 14:20:06 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2021-06-14 20:52:18 +0200
commitc6b66ffab442d5ad9f0eb6a1d2dafec8bdded245 (patch)
tree13c4141683897fd6b26bdd4e261d008b1230db52 /sources/pyside6/tests/QtCore/qobject_parent_test.py
parentd0c6c06df04ee23fe523b477e9fb2a508cf78f3e (diff)
PySide6: Add Qt::FindChildOptions to QObject::findChild(ren)
Pick-to: 6.1 Fixes: PYSIDE-905 Change-Id: Iae343d15fb0db1d37f95ab2d443596777d2dfac6 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com>
Diffstat (limited to 'sources/pyside6/tests/QtCore/qobject_parent_test.py')
-rw-r--r--sources/pyside6/tests/QtCore/qobject_parent_test.py28
1 files changed, 27 insertions, 1 deletions
diff --git a/sources/pyside6/tests/QtCore/qobject_parent_test.py b/sources/pyside6/tests/QtCore/qobject_parent_test.py
index 972d4f6fa..7e024fdde 100644
--- a/sources/pyside6/tests/QtCore/qobject_parent_test.py
+++ b/sources/pyside6/tests/QtCore/qobject_parent_test.py
@@ -38,7 +38,7 @@ sys.path.append(os.fspath(Path(__file__).resolve().parents[1]))
from init_paths import init_test_paths
init_test_paths(False)
-from PySide6.QtCore import QObject, QRegularExpression, QTimer
+from PySide6.QtCore import QObject, QRegularExpression, QTimer, Qt
class ParentRefCountCase(unittest.TestCase):
@@ -113,6 +113,32 @@ class ParentCase(unittest.TestCase):
for i, child in enumerate(children):
self.assertEqual(child, parent.findChild(QObject, f'object{i}'))
+
+ def testFindChildOptions(self):
+ parent = QObject()
+ child = QObject(parent)
+ nested_child_name = 'nestedChild'
+ nested_child = QObject(child)
+ nested_child.setObjectName(nested_child_name)
+
+ search_result = parent.findChild(QObject, nested_child_name)
+ self.assertTrue(search_result)
+ search_result = parent.findChild(QObject, nested_child_name,
+ Qt.FindChildrenRecursively)
+ self.assertTrue(search_result)
+ search_result = parent.findChild(QObject, nested_child_name,
+ Qt.FindDirectChildrenOnly)
+ self.assertFalse(search_result)
+
+ search_results = parent.findChildren(QObject, nested_child_name)
+ self.assertEqual(len(search_results), 1)
+ search_result = parent.findChildren(QObject, nested_child_name,
+ Qt.FindChildrenRecursively)
+ self.assertEqual(len(search_results), 1)
+ search_results = parent.findChildren(QObject, nested_child_name,
+ Qt.FindDirectChildrenOnly)
+ self.assertEqual(len(search_results), 0)
+
def testFindChildWithoutName(self):
parent = QObject()
children = [QObject(parent) for i in range(20)]