From 905a6e503bae4c69eac8a82c212fdca2c615bc7c Mon Sep 17 00:00:00 2001 From: James Taylor Date: Fri, 6 Nov 2009 00:25:02 -0500 Subject: [PATCH] Fix closure in creation of generated test methods, otherwise the last testdef is used for every test --- test/functional/test_toolbox.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/test/functional/test_toolbox.py b/test/functional/test_toolbox.py index 888d131784f..131399cc00b 100644 --- a/test/functional/test_toolbox.py +++ b/test/functional/test_toolbox.py @@ -120,8 +120,11 @@ def build_tests(): s = ( ToolTestCase, ) d = dict() for j, testdef in enumerate( tool.tests ): - def test_tool( self ): - self.do_it( testdef ) - test_tool.__doc__ = "%s ( %s ) > %s" % ( tool.name, tool.id, testdef.name ) - d['test_tool_%06d' % j] = test_tool + def make_test_method( td ): + def test_tool( self ): + self.do_it( td ) + return test_tool + m = make_test_method( testdef ) + m.__doc__ = "%s ( %s ) > %s" % ( tool.name, tool.id, testdef.name ) + d['test_tool_%06d' % j] = m G[ n ] = new.classobj( n, s, d )