test_functools:test_partial_stack
def test_partial_stack():
# issue 3988
stack = []
def multiply(a, b):
frame = sys._getframe()
while frame:
stack.append(frame.f_code.co_name)
frame = frame.f_back
return a * b
penta = functools.partial(multiply, 5)
assert penta(2) == 10
assert len(stack) > 1
# Make sure partial.__call__ is not in the first few stack functions
> assert all([f != "__call__" for f in stack[:3]])
E assert False
E + where False = all([True, False, True])
../build/extra_tests/test_functools.py:19: AssertionError
builder: pypy-c-jit-linux-x86-64 build #11848+
test: test_functools:test_partial_stack