def test_weaky(self):
	# Test that the extra-type information in heapview
	# will still allow types to come, be used, and go, and be collected
	# This depends on that they are weakly-referenced 
	# so internal heapview structures can remove them when they are
	# to be collected.

	import gc
	from sys import getrefcount as grc

	support.TestCase.setUp(self)
	sets = self.guppy.sets
	heapdefs = getattr(sets.setsc, '_NyHeapDefs_'),
	root = []
	heapyc = self.guppy.heapy.heapyc
	nodeset = sets.NodeSet
	nodegraph = heapyc.NodeGraph
	
	gc.collect()

	probe = []
	rcprobe = grc(probe)

	class T(object):
	    x = probe

	class U(T):
	    pass
	T.U = U	# Make circular dependency
	t = T()
	u = U()


	root.append(t)
	root.append(u)

	if 1:
	    hv = heapyc.HeapView(root, heapdefs)
	    x = hv.heap()
	    assert x in t
	    x = None


	T = t = U = u = None
	root[:] = []

	gc.collect()	# 2 collections needed sometimes? Note Apr 15 2005

	nrcprobe = grc(probe)

	self.aseq(nrcprobe, rcprobe)
dataset/ETHPy150Open cloudera/hue/desktop/core/ext-py/guppy-0.1.10/guppy/heapy/test/test_heapyc.py/TestLeak.test_weaky/swapped operands of `in`