diff options
| author | Christian Tismer <tismer@stackless.com> | 2021-08-28 12:49:20 +0200 |
|---|---|---|
| committer | Christian Tismer <tismer@stackless.com> | 2021-08-30 22:34:19 +0200 |
| commit | 9412438ebec18721e1e825e07784821c185544ae (patch) | |
| tree | a9ffef36cf02ce7eed7c2c59b6758a8200307b7c /sources/pyside6/tests/QtWidgets/keep_reference_test.py | |
| parent | 1a185feb6779ecdead6ae88f8f44f1d18616b37a (diff) | |
PyPySide: Skip all tests which use reference counting
[ChangeLog][PySide6] Tests which use reference counting
need to be skipped in upcoming PyPy builds.
Task-number: PYSIDE-535
Change-Id: I5dca3257d3dc40f53e9b4e4a69e24c07938047c2
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'sources/pyside6/tests/QtWidgets/keep_reference_test.py')
| -rw-r--r-- | sources/pyside6/tests/QtWidgets/keep_reference_test.py | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/sources/pyside6/tests/QtWidgets/keep_reference_test.py b/sources/pyside6/tests/QtWidgets/keep_reference_test.py index 1766f16ee..9c661feeb 100644 --- a/sources/pyside6/tests/QtWidgets/keep_reference_test.py +++ b/sources/pyside6/tests/QtWidgets/keep_reference_test.py @@ -37,7 +37,6 @@ sys.path.append(os.fspath(Path(__file__).resolve().parents[1])) from init_paths import init_test_paths init_test_paths(False) -from sys import getrefcount from helper.usesqapplication import UsesQApplication from PySide6.QtCore import QAbstractTableModel from PySide6.QtWidgets import QTableView @@ -73,32 +72,34 @@ class KeepReferenceTest(UsesQApplication): samemodel = view.model() self.assertEqual(model, samemodel) + @unittest.skipUnless(hasattr(sys, "getrefcount"), f"{sys.implementation.name} has no refcount") def testReferenceCounting(self): '''Tests reference count of model object referred by view objects.''' model1 = TestModel() - refcount1 = getrefcount(model1) + refcount1 = sys.getrefcount(model1) view1 = QTableView() view1.setModel(model1) - self.assertEqual(getrefcount(view1.model()), refcount1 + 1) + self.assertEqual(sys.getrefcount(view1.model()), refcount1 + 1) view2 = QTableView() view2.setModel(model1) - self.assertEqual(getrefcount(view2.model()), refcount1 + 2) + self.assertEqual(sys.getrefcount(view2.model()), refcount1 + 2) model2 = TestModel() view2.setModel(model2) - self.assertEqual(getrefcount(view1.model()), refcount1 + 1) + self.assertEqual(sys.getrefcount(view1.model()), refcount1 + 1) + @unittest.skipUnless(hasattr(sys, "getrefcount"), f"{sys.implementation.name} has no refcount") def testReferenceCountingWhenDeletingReferrer(self): '''Tests reference count of model object referred by deceased view object.''' model = TestModel() - refcount1 = getrefcount(model) + refcount1 = sys.getrefcount(model) view = QTableView() view.setModel(model) - self.assertEqual(getrefcount(view.model()), refcount1 + 1) + self.assertEqual(sys.getrefcount(view.model()), refcount1 + 1) del view - self.assertEqual(getrefcount(model), refcount1) + self.assertEqual(sys.getrefcount(model), refcount1) def testReferreedObjectSurvivalAfterContextEnd(self): '''Model object assigned to a view object must survive after getting out of context.''' |
