aboutsummaryrefslogtreecommitdiffstats
path: root/tests/QtGui/qtextedit_signal_test.py
blob: 3195e0e8e19c6f34d4f45ec0579c9a22ae3f4397 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
from PySide import QtGui, QtCore
from helper import UsesQApplication

import unittest

class MyWindow(QtGui.QMainWindow):
    appendText = QtCore.Signal(str)

    @QtCore.Slot()
    def onButtonPressed(self):
        self.appendText.emit("PySide")

    def __init__(self, parent=None):
        super(MyWindow, self).__init__(parent)

        self.textEdit = QtGui.QTextEdit()
        self.btn = QtGui.QPushButton("ClickMe")
        self.btn.clicked.connect(self.onButtonPressed)
        self.appendText.connect(self.textEdit.append)

    def start(self):
        self.btn.click()

    def text(self):
        return self.textEdit.toPlainText()


class testSignalWithCPPSlot(UsesQApplication):

    def testEmission(self):
        w = MyWindow()
        w.start()
        self.assertEqual(w.text(), "PySide")

if __name__ == '__main__':
    unittest.main()