MCPcopy Create free account
hub / github.com/Kitware/VTK / testCommandCircularRef

Method testCommandCircularRef

Common/Core/Testing/Python/TestCommand.py:106–125  ·  view source on GitHub ↗

Test correct reference loop reporting for commands

(self)

Source from the content-addressed store, hash-verified

104 self.assertEqual(cb.caller, None)
105
106 def testCommandCircularRef(self):
107 """Test correct reference loop reporting for commands
108 """
109 cb = callback()
110 o = vtkObject()
111 o.AddObserver(vtkCommand.ModifiedEvent, cb)
112 cb.circular_ref = o
113 # referent to check if "o" is deleted
114 referent = vtkObject()
115 o.referent = referent
116 # make sure gc removes referrer "o" from referent
117 s1 = repr(gc.get_referrers(referent))
118 del o
119 del cb
120 gc.collect()
121 s2 = repr(gc.get_referrers(referent))
122
123 self.assertNotEqual(s1, s2)
124 self.assertNotEqual(s1.count("vtkObject"),0)
125 self.assertEqual(s2.count("vtkObject"),0)
126
127 def testAddRemoveObservers(self):
128 """Test adding and removing observers

Callers

nothing calls this directly

Calls 4

callbackClass · 0.70
vtkObjectClass · 0.50
AddObserverMethod · 0.45
countMethod · 0.45

Tested by

no test coverage detected