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