DynamicMetaObject optimizations.
Reviewer: Marcelo Lira <marcelo.lira@openbossa.org>
Luciano Wolf <luciano.wolf@openbossa.org>
This commit is contained in:
parent
fae2dfd9b1
commit
a713e377bb
4 changed files with 173 additions and 259 deletions
|
|
@ -5,6 +5,9 @@ import unittest
|
|||
import sys
|
||||
from PySide.QtCore import QObject, SIGNAL
|
||||
|
||||
MAX_LOOPS = 5
|
||||
MAX_OBJECTS = 200
|
||||
|
||||
class Dummy(object):
|
||||
def __init__(self, parent):
|
||||
self._parent = parent
|
||||
|
|
@ -16,26 +19,28 @@ class MultipleSlots(unittest.TestCase):
|
|||
def myCB(self):
|
||||
self._count += 1
|
||||
|
||||
"""
|
||||
def testUnboundSignal(self):
|
||||
o = QObject()
|
||||
self._count = 0
|
||||
for i in range(200):
|
||||
for i in range(MAX_OBJECTS):
|
||||
QObject.connect(o, SIGNAL("fire()"), lambda: self.myCB())
|
||||
|
||||
o.emit(SIGNAL("fire()"))
|
||||
self.assertEqual(self._count, 200)
|
||||
self.assertEqual(self._count, MAX_OBJECTS)
|
||||
|
||||
"""
|
||||
def testDisconnectCleanup(self):
|
||||
for c in range(5):
|
||||
for c in range(MAX_LOOPS):
|
||||
self._count = 0
|
||||
self._senders = []
|
||||
for i in range(200):
|
||||
for i in range(MAX_OBJECTS):
|
||||
o = QObject()
|
||||
QObject.connect(o, SIGNAL("fire()"), lambda: self.myCB())
|
||||
self._senders.append(o)
|
||||
o.emit(SIGNAL("fire()"))
|
||||
|
||||
self.assertEqual(self._count, 200)
|
||||
self.assertEqual(self._count, MAX_OBJECTS)
|
||||
|
||||
#delete all senders will disconnect the signals
|
||||
self._senders = []
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue