Blame tests/run/py_classbody.py

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