Blame tests/run/py_classbody.py

Packit 562c7a
# mode: run
Packit 562c7a
# tag: pyclass, global
Packit 562c7a
Packit 562c7a
Packit 562c7a
pyvar = 2
Packit 562c7a
Packit 562c7a
class TestPyAttr(object):
Packit 562c7a
    """
Packit 562c7a
    >>> TestPyAttr.pyvar    # doctest: +ELLIPSIS
Packit 562c7a
    Traceback (most recent call last):
Packit 562c7a
    AttributeError: ...TestPyAttr...has no attribute 'pyvar'
Packit 562c7a
    >>> TestPyAttr.pyval1
Packit 562c7a
    3
Packit 562c7a
    >>> TestPyAttr.pyval2
Packit 562c7a
    2
Packit 562c7a
    """
Packit 562c7a
    pyvar = 3
Packit 562c7a
    pyval1 = pyvar
Packit 562c7a
    del pyvar
Packit 562c7a
    pyval2 = pyvar
Packit 562c7a
Packit 562c7a
Packit 562c7a
import cython
Packit 562c7a
cdefvar = cython.declare(int, 10)
Packit 562c7a
Packit 562c7a
class TestCdefAttr(object):
Packit 562c7a
    """
Packit 562c7a
    >>> TestCdefAttr.cdefvar   # doctest: +ELLIPSIS
Packit 562c7a
    Traceback (most recent call last):
Packit 562c7a
    AttributeError: ...TestCdefAttr...has no attribute 'cdefvar'
Packit 562c7a
    >>> TestCdefAttr.cdefval1
Packit 562c7a
    11
Packit 562c7a
Packit 562c7a
    >>> #TestCdefAttr.cdefval2
Packit 562c7a
    """
Packit 562c7a
    cdefvar = 11
Packit 562c7a
    cdefval1 = cdefvar
Packit 562c7a
    del cdefvar
Packit 562c7a
    # cdefval2 = cdefvar       # FIXME: doesn't currently work ...
Packit 562c7a
Packit 562c7a
Packit 562c7a
class ForLoopInPyClass(object):
Packit 562c7a
    """
Packit 562c7a
    >>> ForLoopInPyClass.i    # doctest: +ELLIPSIS
Packit 562c7a
    Traceback (most recent call last):
Packit 562c7a
    AttributeError: ...ForLoopInPyClass... has no attribute ...i...
Packit 562c7a
    >>> ForLoopInPyClass.k
Packit 562c7a
    0
Packit 562c7a
    >>> ForLoopInPyClass.m
Packit 562c7a
    1
Packit 562c7a
    """
Packit 562c7a
    for i in range(0):
Packit 562c7a
        pass
Packit 562c7a
Packit 562c7a
    for k in range(1):
Packit 562c7a
        pass
Packit 562c7a
Packit 562c7a
    for m in range(2):
Packit 562c7a
        pass
Packit 562c7a
Packit 562c7a
Packit 562c7a
def del_in_class(x):
Packit 562c7a
    """
Packit 562c7a
    >>> del_in_class(True)
Packit 562c7a
    no error
Packit 562c7a
    >>> del_in_class(False)
Packit 562c7a
    NameError
Packit 562c7a
    """
Packit 562c7a
    try:
Packit 562c7a
        class Test(object):
Packit 562c7a
            if x:
Packit 562c7a
                attr = 1
Packit 562c7a
            del attr
Packit 562c7a
    except NameError:
Packit 562c7a
        print("NameError")
Packit 562c7a
    else:
Packit 562c7a
        print("no error")