B
    >\g                 @   s@   d Z ddlmZ ddlmZ ddlmZmZ G dd deZ	dS )z/
Tests for detecting redefinition of builtins.
    )version_info)messages)TestCaseskipIfc               @   s2   e Zd Zdd Zdd Zeedkddd Zd	S )
TestBuiltinsc             C   s   |  dtj d S )Nz
        def foo():
            a = range(1, 10)
            range = a
            return range

        foo()

        print(range)
        )flakesmUndefinedLocal)self r   9lib/python3.7/site-packages/pyflakes/test/test_builtin.pytest_builtin_unbound_local   s    	z'TestBuiltins.test_builtin_unbound_localc             C   s   |  d d S )Nzr
        def f():
            global range
            range = None
            print(range)

        f()
        )r   )r
   r   r   r   test_global_shadowing_builtin   s    z*TestBuiltins.test_global_shadowing_builtin)   z$not an UnboundLocalError in Python 3c             C   s   |  dtj d S )NzU
        def f():
            [range for range in range(1, 10)]

        f()
        )r   r   r	   )r
   r   r   r   test_builtin_in_comprehension"   s    z*TestBuiltins.test_builtin_in_comprehensionN)__name__
__module____qualname__r   r   r   r   r   r   r   r   r   r   
   s   
r   N)
__doc__sysr   Zpyflakesr   r   Zpyflakes.test.harnessr   r   r   r   r   r   r   <module>   s   