def testRefCount(self): o = QObject() filt = MyFilter() o.installEventFilter(filt) self.assertEqual(sys.getrefcount(o), 2) o.installEventFilter(filt) self.assertEqual(sys.getrefcount(o), 2) o.removeEventFilter(filt) self.assertEqual(sys.getrefcount(o), 2)
def testInstallEventFilterRefCountAfterDelete(self): '''Bug 910 - installEventFilter() increments reference count on target object http://bugs.pyside.org/show_bug.cgi?id=910''' obj = QObject() filt = QObject() self.assertEqual(sys.getrefcount(obj), 2) self.assertEqual(sys.getrefcount(filt), 2) obj.installEventFilter(filt) self.assertEqual(sys.getrefcount(obj), 2) self.assertEqual(sys.getrefcount(filt), 2) wref = weakref.ref(obj) del obj self.assertEqual(wref(), None)
def testInstallEventFilterRefCountAfterRemove(self): # Bug 910 obj = QObject() filt = QObject() self.assertEqual(sys.getrefcount(obj), 2) self.assertEqual(sys.getrefcount(filt), 2) obj.installEventFilter(filt) self.assertEqual(sys.getrefcount(obj), 2) self.assertEqual(sys.getrefcount(filt), 2) obj.removeEventFilter(filt) self.assertEqual(sys.getrefcount(obj), 2) self.assertEqual(sys.getrefcount(filt), 2) wref = weakref.ref(obj) del obj self.assertEqual(wref(), None)