Python 3: replace "im_self" by "__self__"
The Python 3 removed the "im_self" attribute. This patch replaces "im_self" by "__self__" attribute. Original description http://docs.python.org/2/reference/datamodel.html Change-Id: I0e66553ccebfcae750693177354723f332637cf5 Partial-Bug: #1282514
This commit is contained in:
parent
caed79d823
commit
011fc276ea
|
@ -62,10 +62,10 @@ def getcallargs(function, *args, **kwargs):
|
|||
# argnames but not in args or kwargs. Uses 'in' rather than '==' because
|
||||
# some tests use 'self2'.
|
||||
if 'self' in argnames[0] or 'cls' == argnames[0]:
|
||||
# The function may not actually be a method or have im_self.
|
||||
# The function may not actually be a method or have __self__.
|
||||
# Typically seen when it's stubbed with mox.
|
||||
if inspect.ismethod(function) and hasattr(function, 'im_self'):
|
||||
keyed_args[argnames[0]] = function.im_self
|
||||
if inspect.ismethod(function) and hasattr(function, '__self__'):
|
||||
keyed_args[argnames[0]] = function.__self__
|
||||
else:
|
||||
keyed_args[argnames[0]] = None
|
||||
|
||||
|
|
|
@ -34,6 +34,7 @@ class FuncutilsTestCase(test_base.BaseTestCase):
|
|||
|
||||
#implicit self counts as an arg
|
||||
self.assertEqual(4, len(callargs))
|
||||
self.assertEqual(self, callargs['self'])
|
||||
self.assertTrue('instance' in callargs)
|
||||
self.assertEqual({'uuid': 1}, callargs['instance'])
|
||||
self.assertTrue('red' in callargs)
|
||||
|
@ -48,6 +49,7 @@ class FuncutilsTestCase(test_base.BaseTestCase):
|
|||
|
||||
#implicit self counts as an arg
|
||||
self.assertEqual(4, len(callargs))
|
||||
self.assertEqual(self, callargs['self'])
|
||||
self.assertTrue('instance' in callargs)
|
||||
self.assertEqual({'uuid': 1}, callargs['instance'])
|
||||
self.assertTrue('red' in callargs)
|
||||
|
@ -62,6 +64,7 @@ class FuncutilsTestCase(test_base.BaseTestCase):
|
|||
|
||||
#implicit self counts as an arg
|
||||
self.assertEqual(4, len(callargs))
|
||||
self.assertEqual(self, callargs['self'])
|
||||
self.assertTrue('instance' in callargs)
|
||||
self.assertEqual({'uuid': 1}, callargs['instance'])
|
||||
self.assertTrue('red' in callargs)
|
||||
|
@ -76,6 +79,7 @@ class FuncutilsTestCase(test_base.BaseTestCase):
|
|||
|
||||
#implicit self counts as an arg
|
||||
self.assertEqual(4, len(callargs))
|
||||
self.assertEqual(self, callargs['self'])
|
||||
self.assertTrue('instance' in callargs)
|
||||
self.assertEqual({'uuid': 1}, callargs['instance'])
|
||||
self.assertTrue('red' in callargs)
|
||||
|
@ -90,6 +94,7 @@ class FuncutilsTestCase(test_base.BaseTestCase):
|
|||
|
||||
#implicit self counts as an arg
|
||||
self.assertEqual(4, len(callargs))
|
||||
self.assertEqual(self, callargs['self'])
|
||||
self.assertTrue('instance' in callargs)
|
||||
self.assertEqual({'uuid': 1}, callargs['instance'])
|
||||
self.assertTrue('red' in callargs)
|
||||
|
@ -103,6 +108,7 @@ class FuncutilsTestCase(test_base.BaseTestCase):
|
|||
callargs = funcutils.getcallargs(self._test_func, *args, **kwargs)
|
||||
|
||||
self.assertEqual(4, len(callargs))
|
||||
self.assertEqual(self, callargs['self'])
|
||||
self.assertTrue('instance' in callargs)
|
||||
self.assertEqual({'uuid': 1}, callargs['instance'])
|
||||
self.assertTrue('red' in callargs)
|
||||
|
|
Loading…
Reference in New Issue