Fixed signal signature parser.
Fixes bug #311. Reviewer: Luciano Wolf <luciano.wolf@openbossa.org> Hugo Parente Lima <hugo.pl@gmail.com>
This commit is contained in:
parent
6914f21603
commit
268bf7735b
3 changed files with 56 additions and 8 deletions
|
|
@ -1,4 +1,5 @@
|
|||
PYSIDE_TEST(args_dont_match_test.py)
|
||||
PYSIDE_TEST(bug_311.py)
|
||||
PYSIDE_TEST(decorators_test.py)
|
||||
PYSIDE_TEST(invalid_callback_test.py)
|
||||
PYSIDE_TEST(lambda_gui_test.py)
|
||||
|
|
|
|||
42
tests/signals/bug_311.py
Normal file
42
tests/signals/bug_311.py
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import unittest
|
||||
from PySide import QtCore
|
||||
from helper import UsesQCoreApplication
|
||||
|
||||
class DerivedDate(QtCore.QDate):
|
||||
def __init__(self,y,m,d):
|
||||
super(DerivedDate,self).__init__(y,m,d)
|
||||
|
||||
class Emitter(QtCore.QObject):
|
||||
dateSignal1 = QtCore.Signal(QtCore.QDate)
|
||||
dateSignal2 = QtCore.Signal(DerivedDate)
|
||||
tupleSignal = QtCore.Signal(tuple)
|
||||
|
||||
class SignaltoSignalTest(UsesQCoreApplication):
|
||||
def myCb(self, dt):
|
||||
self._dt = dt
|
||||
|
||||
def testBug(self):
|
||||
e = Emitter()
|
||||
d = DerivedDate(2010,8,24)
|
||||
self._dt = None
|
||||
e.dateSignal1.connect(self.myCb)
|
||||
e.dateSignal1.emit(d)
|
||||
self.assertEqual(self._dt, d)
|
||||
|
||||
self._dt = None
|
||||
e.dateSignal2.connect(self.myCb)
|
||||
e.dateSignal2.emit(d)
|
||||
self.assertEqual(self._dt, d)
|
||||
|
||||
myTuple = (5, 6, 7)
|
||||
self._dt = None
|
||||
e.tupleSignal.connect(self.myCb)
|
||||
e.tupleSignal.emit(myTuple)
|
||||
self.assertEqual(myTuple, self._dt)
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue