File: //usr/local/lib/python3.7/test/__pycache__/test_syntax.cpython-37.opt-2.pyc
B
��g�X � @ sH d dl Z d dlZd dlmZ G dd� dej�Zdd� ZedkrDe� dS )� N)�supportc @ sn e Zd Zddd�Zdd� Zdd � Zd
d� Zdd
� Zdd� Zdd� Z dd� Z
dd� Zdd� Zdd� Z
dd� ZdS )�SyntaxTestCase�
<testcase>�execNc
C s� yt |||� W n� tk
r� } z�|r@t||�s@| �d|j � t�|t|��} | d krh| �d|f � | �|j |� |d k r�| �|j
|� |d k r�| �|j|� W d d }~X Y nX | �d� d S )NzSyntaxError is not a %sz SyntaxError did not contain '%r'z#compile() did not raise SyntaxError)�compile�SyntaxError�
isinstanceZfail�__name__�re�search�strZassertEqual�filename�lineno�offset)
�self�codeZerrtextr
�mode�subclassr r �err�mo� r �,/usr/local/lib/python3.7/test/test_syntax.py�_check_errorX s zSyntaxTestCase._check_errorc C s | � dd� d S )Nzf() = 1Zassign)r )r r r r �test_assign_callp s zSyntaxTestCase.test_assign_callc C s | � dd� d S )Nzdel f()�delete)r )r r r r �test_assign_dels s zSyntaxTestCase.test_assign_delc C s d}| j |ddd� d S )Nz�if 1:
def error(a):
global a # SyntaxError
def error2():
b = 1
global b # SyntaxError
zparameter and global� )r )r )r �sourcer r r �test_global_param_err_firstv s z*SyntaxTestCase.test_global_param_err_firstc C s d}| j |ddd� d S )Nz�if 1:
def error(a):
nonlocal a # SyntaxError
def error2():
b = 1
global b # SyntaxError
zparameter and nonlocalr )r )r )r r r r r �test_nonlocal_param_err_first� s z,SyntaxTestCase.test_nonlocal_param_err_firstc C s | � dd� d S )N�breakzoutside loop)r )r r r r �test_break_outside_loop� s z&SyntaxTestCase.test_break_outside_loopc C s | j ddtd� d S )Nz
foo()
bar()
zunexpected indent)r )r �IndentationError)r r r r �test_unexpected_indent� s z%SyntaxTestCase.test_unexpected_indentc C s | j ddtd� d S )Nzif 1:
foo()zexpected an indented block)r )r r"