diff options
Diffstat (limited to 'sources/pyside2/tests/QtUiTools/uiloader_test.py')
| -rw-r--r-- | sources/pyside2/tests/QtUiTools/uiloader_test.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/sources/pyside2/tests/QtUiTools/uiloader_test.py b/sources/pyside2/tests/QtUiTools/uiloader_test.py index 07461ca2f..2fceb45c1 100644 --- a/sources/pyside2/tests/QtUiTools/uiloader_test.py +++ b/sources/pyside2/tests/QtUiTools/uiloader_test.py @@ -40,6 +40,15 @@ from PySide2.QtWidgets import QWidget from PySide2.QtUiTools import QUiLoader +class OverridingLoader(QUiLoader): + def createWidget(self, class_name, parent=None, name=''): + if class_name == 'QWidget': + w = QWidget(parent) + w.setObjectName(name) + return w + return QUiLoader.createWidget(self, class_name, parent, name) + + class QUiLoaderTester(UsesQApplication): def setUp(self): UsesQApplication.setUp(self) @@ -58,6 +67,13 @@ class QUiLoaderTester(UsesQApplication): self.assertEqual(w.findChild(QWidget, "grandson_object"), child.findChild(QWidget, "grandson_object")) + def testLoadFileOverride(self): + # PYSIDE-1070, override QUiLoader::createWidget() with parent=None crashes + loader = OverridingLoader() + w = loader.load(self._filePath) + self.assertNotEqual(w, None) + + if __name__ == '__main__': unittest.main() |
