o
    Zh                     @   sx   d Z ddlmZ ddlmZ ddlmZ ddlm	Z	 ddl
mZ edd	 ed
dd D dkZG dd deZdS )zTest lexers module    )TestCase)__version__)Token)	BashLexer   )lexersc                 c   s    | ]}t |V  qd S N)int).0x r   T/var/www/html/lang_env/lib/python3.10/site-packages/IPython/lib/tests/test_lexers.py	<genexpr>   s    r   .N)r      c                   @   s    e Zd ZdZdd Zdd ZdS )
TestLexerszCollection of lexers testsc                 C   s   t  | _t | _d S r   )r   ZIPythonLexerlexerr   
bash_lexer)selfr   r   r   setUp   s   
zTestLexers.setUpc                 C   s  d}t jdfg}|| j|dd   t| j|}|d d |d d ks+J d| }t jdfg|dd   }|d d t| j|d d ksOJ d|dd   }t jdft jdft jd	fg|dd   }|t| j|kswJ d
| }t jdft jdft jdft jdfg| }|d d t| j|d d ksJ d| }t jdft j	dft jdft jdft jdfg| }|d d t| j|d d ksJ d|dd   }t jdft j	dft jdft jdft jdft jdft j
dft jdfg|dd   }|d t jdfkrtrt jjdf|d< |d d t| j|d d ks-J d}t jdft jdft jdft jdft jdft j
dft jdfg}|t| j|ksZJ d}t jdft jdft j
dft jdfg}|t| j|ks{J d}t jdft j
dft jdft jd	fg}|d d t| j|d d ksJ d }t jdft jdft jd!ft jdft jd"ft jd	fg}|d d t| j|d d ksJ d#}t jdft jdft jd$ft jd	fg}|d d t| j|d d ksJ d%}t jd&ft jdft jd	fg}|t| j|ksJ d'}t jd(ft jd)ft j
d*ft jdft jd+ft jdft jd,ft jdft jd-ft j	d.ft jd	ft jd/ft j
d0ft jd	fg}|d1 t jd	fkrltrlt jjd	f|d1< |d d t| j|d d ksJ d2}t jd3ft jd4ft jd5ft jd6ft j	d7ft jjjd8ft j	d9ft jd	fg}d:}t jd;ft jd	ft j	d<ft jjd=ft j	d>ft jd?ft j	d<ft j	d@ft jjd=ft j	d>ft jd	fg}|t| j|ksJ d S )ANz!echo $HOME
!   z!!z	 %%!
z	 z%%!
zx = r    =zx, = ,z	x, = %sx %sx   zf = %R function () {}
fRz function () {}
z	%%xyz
$foo
	z%%Zxyzz
$foo
z	%system?
system?zx != y
z!=yz ?math.sin
zmath.sinz *int*?
z *int*z)%%writefile -a foo.py
if a == b:
    passz%%writefilez -a foo.py
ifaz==b:z    pass
   z%%timeit
math.sin(0)z	%%timeit
mathr   sin(0)z%%HTML
<div>foo</div>z%%HTML<div>Zfoo/)r   Operatorextendr   
get_tokenslistr   TextNamePunctuationKeywordpyg214
WhitespaceLiteralNumberIntegerTag)r   fragmentZbash_tokensZipylex_tokenZ
fragment_2Ztokens_2tokensr   r   r   testIPythonLexer   s  
(
((
	
*	****

zTestLexers.testIPythonLexerN)__name__
__module____qualname____doc__r   rE   r   r   r   r   r      s    r   )rI   Zunittestr   pygmentsr   Zpygments_versionZpygments.tokenr   Zpygments.lexersr    r   tuplesplitr=   r   r   r   r   r   <module>   s    $