##// END OF EJS Templates
Final cleanups responding to Brian's code review....
Final cleanups responding to Brian's code review. The code isn't perfect yet, but good enough for integration into trunk so Evan and the others can start using it. I've noted at the top a few key todo items left to think about.

File last commit:

r2494:c8938204
r2782:c02ae749
Show More
tclass.py
31 lines | 848 B | text/x-python | PythonLexer
"""Simple script to be run *twice*, to check reference counting bugs.
See test_run for details."""
import sys
# We want to ensure that while objects remain available for immediate access,
# objects from *previous* runs of the same script get collected, to avoid
# accumulating massive amounts of old references.
class C(object):
def __init__(self,name):
self.name = name
def __del__(self):
print 'tclass.py: deleting object:',self.name
sys.stdout.flush()
try:
name = sys.argv[1]
except IndexError:
pass
else:
if name.startswith('C'):
c = C(name)
#print >> sys.stderr, "ARGV:", sys.argv # dbg
# This next print statement is NOT debugging, we're making the check on a
# completely separate process so we verify by capturing stdout:
print 'ARGV 1-:', sys.argv[1:]
sys.stdout.flush()