add a helper to get a function's dictionary
--HG-- branch : trunk
This commit is contained in:
parent
499a982860
commit
86da34b874
|
@ -153,6 +153,7 @@ initpkg(__name__,
|
|||
'builtin._istext' : ('./builtin/builtin31.py', '_istext'),
|
||||
'builtin._getimself' : ('./builtin/builtin31.py', '_getimself'),
|
||||
'builtin._getcode' : ('./builtin/builtin31.py', '_getcode'),
|
||||
'builtin._getfuncdict' : ('./builtin/builtin31.py', '_getfuncdict'),
|
||||
'builtin.builtins' : ('./builtin/builtin31.py', 'builtins'),
|
||||
'builtin.execfile' : ('./builtin/builtin31.py', 'execfile'),
|
||||
'builtin.callable' : ('./builtin/builtin31.py', 'callable'),
|
||||
|
|
|
@ -25,6 +25,9 @@ if sys.version_info >= (3, 0):
|
|||
def _getcode(function):
|
||||
return function.__code__
|
||||
|
||||
def _getfuncdict(function):
|
||||
return getattr(function, "__dict__", None)
|
||||
|
||||
def execfile(fn, globs=None, locs=None):
|
||||
if globs is None:
|
||||
back = sys._getframe(1)
|
||||
|
@ -64,6 +67,9 @@ else:
|
|||
def _getcode(function):
|
||||
return function.func_code
|
||||
|
||||
def _getfuncdict(function):
|
||||
return getattr(function, "__dict__", None)
|
||||
|
||||
import __builtin__ as builtins
|
||||
def print_(*args, **kwargs):
|
||||
""" minimal backport of py3k print statement. """
|
||||
|
|
|
@ -105,6 +105,13 @@ def test_execfile(tmpdir):
|
|||
py.builtin.execfile(str(test_file))
|
||||
assert A.x == 3
|
||||
|
||||
def test_getfuncdict():
|
||||
def f():
|
||||
pass
|
||||
f.x = 4
|
||||
assert py.builtin._getfuncdict(f)["x"] == 4
|
||||
assert py.builtin._getfuncdict(2) is None
|
||||
|
||||
def test_callable():
|
||||
class A: pass
|
||||
assert py.builtin.callable(test_callable)
|
||||
|
|
Loading…
Reference in New Issue