aboutsummaryrefslogtreecommitdiffstats
path: root/tests/signals
diff options
context:
space:
mode:
Diffstat (limited to 'tests/signals')
-rw-r--r--tests/signals/lambda_gui_test.py21
1 files changed, 15 insertions, 6 deletions
diff --git a/tests/signals/lambda_gui_test.py b/tests/signals/lambda_gui_test.py
index e842ae2e2..ba10590ba 100644
--- a/tests/signals/lambda_gui_test.py
+++ b/tests/signals/lambda_gui_test.py
@@ -14,24 +14,33 @@ except ImportError:
from helper import UsesQApplication
if hasQtGui:
+ class Control:
+ def __init__(self):
+ self.arg = False
+
class QtGuiSigLambda(UsesQApplication):
def testButton(self):
#Connecting a lambda to a QPushButton.clicked()
obj = QPushButton('label')
- QObject.connect(obj, SIGNAL('clicked()'),
- lambda: setattr(obj, 'called', True))
+ ctr = Control()
+ func = lambda: setattr(ctr, 'arg', True)
+ QObject.connect(obj, SIGNAL('clicked()'), func)
obj.click()
- self.assert_(obj.called)
+ self.assert_(ctr.arg)
+ QObject.disconnect(obj, SIGNAL('clicked()'), func)
+
def testSpinButton(self):
#Connecting a lambda to a QPushButton.clicked()
obj = QSpinBox()
+ ctr = Control()
arg = 444
- QObject.connect(obj, SIGNAL('valueChanged(int)'),
- lambda x: setattr(obj, 'arg', 444))
+ func = lambda x: setattr(ctr, 'arg', 444)
+ QObject.connect(obj, SIGNAL('valueChanged(int)'), func)
obj.setValue(444)
- self.assertEqual(obj.arg, arg)
+ self.assertEqual(ctr.arg, arg)
+ QObject.disconnect(obj, SIGNAL('valueChanged(int)'), func)
if __name__ == '__main__':
unittest.main()