from unittest import TestCase , main from sys import getrefcount def f () : try : raise ValueError except ValueError : raise ValueError class Test_assertRaises ( TestCase ) : def test_with ( self ) : refcount = getrefcount ( f ) self.assertRaises ( ValueError , f ) self.assertEqual ( refcount , getrefcount(f) ) def test_without ( self ) : refcount = getrefcount ( f ) try : f() except ValueError : pass self.assertEqual ( refcount , getrefcount(f) ) if __name__ == '__main__' : main()