diff options
author | Lauro Neto <lauro.neto@openbossa.org> | 2009-12-12 17:17:28 -0300 |
---|---|---|
committer | Lauro Neto <lauro.neto@openbossa.org> | 2009-12-16 21:14:24 -0300 |
commit | 976cbf00293016ba4e173f4e89de92790fdf06c0 (patch) | |
tree | f42cab3248dd81cf3e2157ce9b5e76618baf0239 /tests/signals | |
parent | 859cec5632618710821cb56eb5483f2fab290f66 (diff) |
Fixing "wrong number of arguments" tests
Diffstat (limited to 'tests/signals')
-rw-r--r-- | tests/signals/signal_emission_test.py | 30 |
1 files changed, 20 insertions, 10 deletions
diff --git a/tests/signals/signal_emission_test.py b/tests/signals/signal_emission_test.py index 28e1b6582..b79b033d9 100644 --- a/tests/signals/signal_emission_test.py +++ b/tests/signals/signal_emission_test.py @@ -5,7 +5,7 @@ import sys import unittest -from PySide.QtCore import QObject, QTimer, QCoreApplication, SIGNAL, SLOT +from PySide.QtCore import QObject, QTimer, QCoreApplication, SIGNAL, SLOT, QProcess try: from PySide.QtGui import QSpinBox, QPushButton, QApplication @@ -14,7 +14,7 @@ except ImportError: QPushButton = object QApplication = object -from helper import BasicPySlotCase, UsesQApplication +from helper import BasicPySlotCase, UsesQApplication, UsesQCoreApplication from helper.decorators import requires @requires('PySide.QtGui') @@ -35,14 +35,6 @@ class ButtonPySlot(UsesQApplication, BasicPySlotCase): button.emit(SIGNAL('clicked()')) self.assert_(self.called) - def testButtonClickedWrongArgs(self): - """Python slot connected to QPushButton.clicked() and more args""" - button = QPushButton('Mylabel') - QObject.connect(button, SIGNAL('clicked()'), self.cb) - self.args = tuple() - button.emit(SIGNAL('clicked()'), 44) - self.assert_(self.called) - def testButtonClick(self): """Indirect qt signal emission using the QPushButton.click() method """ button = QPushButton('label') @@ -126,5 +118,23 @@ class QSpinBoxQtSlots(UsesQApplication): self.assertEqual(spinSend.value(), 42) +class ArgsOnEmptySignal(UsesQCoreApplication): + '''Trying to emit a signal without arguments passing some arguments''' + + def testArgsToNoArgsSignal(self): + '''Passing arguments to a signal without arguments''' + process = QProcess() + self.assertRaises(TypeError, process.emit, SIGNAL('started()'), 42) + + +class MoreArgsOnEmit(UsesQCoreApplication): + '''Trying to pass more args than needed to emit (signals with args)''' + + def testMoreArgs(self): + '''Passing more arguments than needed''' + process = QProcess() + self.assertRaises(TypeError, process.emit, SIGNAL('finished(int)'), 55, 55) + + if __name__ == '__main__': unittest.main() |