I get this error message when trying to run a unittest test with a
dynamically created test method:
Traceback (most recent call last):
File "unittest.py", line 215, in __call__
testMethod()
TypeError: ?() takes no arguments (1 given)
I have no clue as to where the 1 given argument comes from...
I am using python 2.2 and here is a copy of the code generating this:
#! /bin/env python
import unittest, commands, new
class Test(unittest.TestCase):
done = None
def initialization(self):
Test.port = 11000
Test.host = 'meadow'
def setUp(self):
if not Test.done:
Test.done = 1
Test.initialization(self)
def tearDown(self):
pass
def testCommandFailure(self):
status, output = commands.getstatusoutput('python
.../bin/uimClient.py' +
' -p ' + str(Test.port) + ' -h ' + Test.host)
self.assertEqual(256, status)
def testCommandFailure3(self):
status, output = commands.getstatusoutput('python
.../bin/uimClient.py' +
' -p ' + str(Test.port) + ' -h ' + Test.host)
self.assertEqual(256, status)
#====================================BASE
TEST==================================
if __name__ == '__main__':
base = 'def testCommandFailure2(self):\n\t""" Testing test1 method
"""' +\
'\n\tstatus, output = commands.getstatusoutput("python " +' + \
'" ../bin/uimClient.py -p " + str(Test.port) + " -h " +
Test.host)'+\
'\n\tself.assertEqual(status, 256)\n'
code = compile(base, 'uimClientFT.py', 'exec')
testf = new.function(code, Test.__dict__, 'testCommandFailure2')
setattr(Test, 'testCommandFailure2', testf)
print Test.__dict__
print type(Test.testCommandFailure2)
unittest.main()
J-P
thankx