From 77a1654ad587241d3c14bafa2c0deae53e1599ee Mon Sep 17 00:00:00 2001 From: Hugo Parente Lima Date: Fri, 22 Oct 2010 17:28:43 -0200 Subject: Fix bugs 430, 426, 429, 394, 433. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit These bugs are about QApplication instance being destroyed before some QObject. Reviewer: Luciano Wolf Renato Araújo --- tests/QtGui/CMakeLists.txt | 3 +++ tests/QtGui/bug_429.py | 10 ++++++++++ tests/QtGui/bug_430.py | 14 ++++++++++++++ tests/QtGui/bug_433.py | 14 ++++++++++++++ tests/QtUiTools/CMakeLists.txt | 1 + tests/QtUiTools/bug_426.py | 18 ++++++++++++++++++ tests/QtUiTools/bug_426.ui | 19 +++++++++++++++++++ 7 files changed, 79 insertions(+) create mode 100644 tests/QtGui/bug_429.py create mode 100644 tests/QtGui/bug_430.py create mode 100644 tests/QtGui/bug_433.py create mode 100644 tests/QtUiTools/bug_426.py create mode 100644 tests/QtUiTools/bug_426.ui (limited to 'tests') diff --git a/tests/QtGui/CMakeLists.txt b/tests/QtGui/CMakeLists.txt index 21aa7690d..7ff2f7e4b 100644 --- a/tests/QtGui/CMakeLists.txt +++ b/tests/QtGui/CMakeLists.txt @@ -13,6 +13,9 @@ PYSIDE_TEST(bug_367.py) PYSIDE_TEST(bug_389.py) PYSIDE_TEST(bug_400.py) PYSIDE_TEST(bug_416.py) +PYSIDE_TEST(bug_429.py) +PYSIDE_TEST(bug_430.py) +PYSIDE_TEST(bug_433.py) PYSIDE_TEST(customproxywidget_test.py) PYSIDE_TEST(deepcopy_test.py) PYSIDE_TEST(float_to_int_implicit_conversion_test.py) diff --git a/tests/QtGui/bug_429.py b/tests/QtGui/bug_429.py new file mode 100644 index 000000000..f49d24474 --- /dev/null +++ b/tests/QtGui/bug_429.py @@ -0,0 +1,10 @@ +from PySide.QtCore import * +from PySide.QtGui import * +import sys + +app = QApplication(sys.argv) +scene = QGraphicsScene() +label = QLabel("hello world") +label.show() +QTimer.singleShot(0, label.close) +exit(app.exec_()) diff --git a/tests/QtGui/bug_430.py b/tests/QtGui/bug_430.py new file mode 100644 index 000000000..256c4e203 --- /dev/null +++ b/tests/QtGui/bug_430.py @@ -0,0 +1,14 @@ +import sys +from PySide.QtCore import * +from PySide.QtGui import * + +class ListModel(QAbstractListModel): + def rowCount(self, parent = QModelIndex()): + return len(self._items) + +app = QApplication([]) +model = ListModel() +v = QListView() +v.setModel(model) +QTimer.singleShot(0, v.close) +app.exec_() diff --git a/tests/QtGui/bug_433.py b/tests/QtGui/bug_433.py new file mode 100644 index 000000000..97d897e81 --- /dev/null +++ b/tests/QtGui/bug_433.py @@ -0,0 +1,14 @@ +from PySide import QtCore, QtGui +import sys + +class Test(QtGui.QGraphicsView): + def __init__(self, parent=None): + super(Test, self).__init__(parent) + self.s = QtGui.QGraphicsScene() + self.setScene(self.s) + +a = QtGui.QApplication(sys.argv) +t = Test() +t.show() +QtCore.QTimer.singleShot(0, t.close) +sys.exit(a.exec_()) diff --git a/tests/QtUiTools/CMakeLists.txt b/tests/QtUiTools/CMakeLists.txt index 7cb8b6ada..ebf7a23ec 100644 --- a/tests/QtUiTools/CMakeLists.txt +++ b/tests/QtUiTools/CMakeLists.txt @@ -1,5 +1,6 @@ PYSIDE_TEST(bug_360.py) PYSIDE_TEST(bug_376.py) PYSIDE_TEST(bug_392.py) +PYSIDE_TEST(bug_426.py) PYSIDE_TEST(uiloader_test.py) PYSIDE_TEST(ui_test.py) diff --git a/tests/QtUiTools/bug_426.py b/tests/QtUiTools/bug_426.py new file mode 100644 index 000000000..11e2631fc --- /dev/null +++ b/tests/QtUiTools/bug_426.py @@ -0,0 +1,18 @@ +import sys +import os +from PySide import QtCore, QtGui +from PySide.QtUiTools import QUiLoader + +class Window(object): + def __init__(self): + loader = QUiLoader() + filePath = os.path.join(os.path.dirname(__file__), 'bug_426.ui') + self.widget = loader.load(filePath) + self.group = QtGui.QActionGroup(self.widget) + self.widget.show() + QtCore.QTimer.singleShot(0, self.widget.close) + +if __name__ == "__main__": + app = QtGui.QApplication(sys.argv) + win = Window() + sys.exit(app.exec_()) diff --git a/tests/QtUiTools/bug_426.ui b/tests/QtUiTools/bug_426.ui new file mode 100644 index 000000000..99353cd2b --- /dev/null +++ b/tests/QtUiTools/bug_426.ui @@ -0,0 +1,19 @@ + + + Form + + + + 0 + 0 + 400 + 300 + + + + Form + + + + + -- cgit v1.2.3