Blame tests/run/external_ref_reassignment.pyx
|
Packit Service |
99d393 |
# Test that variable visible outside of the local scope (e.g. closure, cglobals)
|
|
Packit Service |
99d393 |
# is set before original value is decrefed.
|
|
Packit Service |
99d393 |
cdef object g
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
def test_cglobals_reassignment():
|
|
Packit Service |
99d393 |
"""
|
|
Packit Service |
99d393 |
>>> test_cglobals_reassignment()
|
|
Packit Service |
99d393 |
1234
|
|
Packit Service |
99d393 |
"""
|
|
Packit Service |
99d393 |
global g
|
|
Packit Service |
99d393 |
class Special:
|
|
Packit Service |
99d393 |
def __del__(self):
|
|
Packit Service |
99d393 |
print g
|
|
Packit Service |
99d393 |
g = (Special(),)
|
|
Packit Service |
99d393 |
g = 1234
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
def test_closure_reassignment():
|
|
Packit Service |
99d393 |
"""
|
|
Packit Service |
99d393 |
>>> test_closure_reassignment()
|
|
Packit Service |
99d393 |
4321
|
|
Packit Service |
99d393 |
"""
|
|
Packit Service |
99d393 |
class Special:
|
|
Packit Service |
99d393 |
def __del__(self):
|
|
Packit Service |
99d393 |
print c
|
|
Packit Service |
99d393 |
c = (Special(),)
|
|
Packit Service |
99d393 |
c = 4321
|