aboutsummaryrefslogtreecommitdiffstats
path: root/tests/QtCore/max_signals.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/QtCore/max_signals.py')
-rw-r--r--tests/QtCore/max_signals.py32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/QtCore/max_signals.py b/tests/QtCore/max_signals.py
new file mode 100644
index 000000000..190eaa595
--- /dev/null
+++ b/tests/QtCore/max_signals.py
@@ -0,0 +1,32 @@
+import unittest
+
+from PySide.QtCore import QObject, Signal, SIGNAL
+
+class MyObject(QObject):
+ pass
+
+
+class TestSignalLimitless(unittest.TestCase):
+ def test100DynamicSignals(self):
+ self.count = 0
+ def onSignal():
+ self.count += 1
+
+ #create 100 dynamic signals
+ o = MyObject()
+ for i in range(100):
+ o.connect(SIGNAL('sig%d()'%i), onSignal)
+
+ #chek if the signals are valid
+ m = o.metaObject()
+ for i in range(100):
+ self.assert_(m.indexOfSignal('sig%d()'%i) > 0)
+
+ #emit all 100 signals
+ for i in range(100):
+ o.emit(SIGNAL('sig%d()'%i))
+
+ self.assertEqual(self.count, 100)
+
+if __name__ == '__main__':
+ unittest.main()