Ë
    pPêj*  ã                  óä   — d Z ddlmZ ddlZddlmZ ddlmZ ddlm	Z	 ddl
mZmZ ddlmZ dd	lmZ dd
lmZmZ ddlmZmZmZ ddlmZ ddlmZ  G d„ de«      Zdd„ZdZ G d„ de«      Zdd„Z y)zTests for the mypy parser.é    )ÚannotationsN)Úskip)Údefaults)Úparse_mypy_comments)ÚCompileErrorÚErrors)ÚOptions)Úparse)ÚDataDrivenTestCaseÚ	DataSuite)Úassert_string_arrays_equalÚfind_test_filesÚparse_options)Úupdate_testcase_output)Úget_mypy_commentsc                  óò   — e Zd ZdZdZ eddg¬«      Zej                  dk  rej                  d«       ej                  dk  rej                  d	«       ej                  d
k  rej                  d«       dd„Z
y)ÚParserSuiteTú.zparse*.testúparse-errors.test)ÚpatternÚexclude©é   é   zparse-python312.test©r   é   zparse-python313.test©r   é   zparse-python314.testc                ó   — t        |«       y ©N)Útest_parser©ÚselfÚtestcases     úX/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/mypy/test/testparse.pyÚrun_casezParserSuite.run_case    s
   € Ü�HÕó    N©r$   r   ÚreturnÚNone)Ú__name__Ú
__module__Ú__qualname__Úrequired_out_sectionÚ	base_pathr   ÚfilesÚsysÚversion_infoÚremover&   © r'   r%   r   r      ss   „ ØÐØ€IÙ MÐ<OÐ;PÔQ€Eà
×Ñ˜'Ò!Ø�‰Ð+Ô,Ø
×Ñ˜'Ò!Ø�‰Ð+Ô,Ø
×Ñ˜'Ò!Ø�‰Ð+Ô,ôr'   r   c           	     ó>  — t        «       }d|_        | j                  j                  d«      rd|_        nh| j                  j                  d«      rd|_        nE| j                  j                  d«      rd|_        n"| j                  j                  d«      rd	|_        d
j                  | j                  «      }t        |«      }t        ||«      \  }}|j                  |«      }	 t        |«      }t        t        |d«      dd||d¬«      }|j                  «       r|j                  «        |j                  |«      j!                  d
«      }t'        | j(                  |d| j                  › d| j*                  › d�«       y# t"        $ r}	|	j$                  }Y d}	~	ŒMd}	~	ww xY w)zdPerform a single parser test case.

    The argument contains the description of the test case.
    Tzpython310.test)r   é
   zpython312.testr   zpython313.testr   zpython314.testr   ú
ÚasciiÚmainÚ__main__)ÚfnamÚmoduleÚerrorsÚoptionsÚeagerNzInvalid parser output (ú, line ú))r	   Úhide_error_codesÚfileÚendswithÚpython_versionÚjoinÚinputr   r   Úapply_changesr   r
   ÚbytesÚ	is_errorsÚraise_errorÚstr_with_optionsÚsplitr   Úmessagesr   ÚoutputÚline)
r$   r>   ÚsourceÚcommentsÚchangesÚ_r=   ÚnÚaÚes
             r%   r!   r!   $   sl  € ô
 ‹i€GØ#€GÔà‡}�}×ÑÐ.Ô/Ø!(ˆÕØ	�‰×	Ñ	Ð 0Ô	1Ø!(ˆÕØ	�‰×	Ñ	Ð 0Ô	1Ø!(ˆÕØ	�‰×	Ñ	Ð 0Ô	1Ø!(ˆÔà�Y‰Y�x—~‘~Ó&€Fô ! Ó(€HÜ$ X¨wÓ7�J€GˆQØ×#Ñ# GÓ,€GðÜ˜“ˆÜÜ�&˜'Ó"ØØØØØô
ˆð ×ÑÔØ×ÑÔ Ø×Ñ˜wÓ'×-Ñ-¨dÓ3ˆô Ø�‰˜Ð5°h·m±m°_ÀGÈHÏMÉMÈ?ÐZ[Ð\õøô ò Ø�J‰J�ûðús   Ã$A&E= Å=	FÆFÆFrC   c                  ó"   — e Zd ZdZdZdgZdd„Zy)ÚParseErrorSuiteTr   r   c                ó   — t        |«       y r    )Útest_parse_errorr"   s     r%   r&   zParseErrorSuite.run_caseZ   s
   € Ü˜Õ"r'   Nr(   )r+   r,   r-   r.   r/   r0   r&   r4   r'   r%   rY   rY   U   s   „ ØÐØ€IØ Ð!€Eô#r'   rY   c           
     ó   — 	 t        dj                  | j                  «      | d«      }|j                  t        j
                  k  rt        j
                  |_        |j                  t        j                  d d k7  r
t        «        | j                  j                  d«      rd|_        t        |«      }t        t        dj                  | j                  «      d«      t        d||d¬	«       |j!                  «       r|j#                  «        t%        d
«      ‚# t&        $ r°}|j(                  �|j(                  dk(  sJ ‚| j*                  |j,                  k7  r4| j.                  j1                  dd«      rt3        | |j,                  d¬«       t5        | j*                  |j,                  d| j6                  › d| j8                  › d�«       Y d }~y d }~ww xY w)Nr7   r   é   Ú_old_parserFzutf-8r:   T)r=   r>   r?   zNo errors reportedz--update-dataé   )Úincremental_stepzInvalid compiler output (r@   rA   )r   rF   rG   rE   r   ÚPYTHON3_VERSIONr1   r2   r   ÚnamerD   Únative_parserr   r
   rI   ÚINPUT_FILE_NAMErJ   rK   ÚAssertionErrorr   Úmodule_with_blockerrO   rN   ÚconfigÚ	getoptionr   r   rC   rP   )r$   r>   r=   rW   s       r%   r[   r[   ^   sx  € ð$
Ü §	¡	¨(¯.©.Ó 9¸8ÀQÓGˆØ×!Ñ!¤H×$<Ñ$<Ò<Ü%-×%=Ñ%=ˆGÔ"Ø×!Ñ!¤S×%5Ñ%5°b°qÐ%9Ò9ÜŒFØ�=‰=×!Ñ! -Ô0à$)ˆGÔ!ä˜“ˆÜÜ�$—)‘)˜HŸN™NÓ+¨WÓ5ÜØØØØõ	
ð ×ÑÔØ×ÑÔ ÜÐ1Ó2Ð2øÜò 
Ø× Ñ Ð,Ø×(Ñ(¨JÒ6Ð6Ð6ð �?‰?˜aŸj™jÒ(¨X¯_©_×-FÑ-FÀÐX]Ô-^Ü" 8¨Q¯Z©ZÈ!ÕLô 	#Ø�O‰OØ�J‰JØ'¨¯© °g¸h¿m¹m¸_ÈAÐN÷	
ñ 	
ûð
ús   ‚DD Ä	GÄB&GÇGr(   )!Ú__doc__Ú
__future__r   r1   Úpytestr   Úmypyr   Úmypy.config_parserr   Úmypy.errorsr   r   Úmypy.optionsr	   Ú
mypy.parser
   Úmypy.test.datar   r   Úmypy.test.helpersr   r   r   Úmypy.test.update_datar   Ú	mypy.utilr   r   r!   rd   rY   r[   r4   r'   r%   ú<module>ru      sY   ðÙ  å "ã 
å å Ý 2ß ,Ý  Ý ß 8ß XÑ XÝ 8Ý 'ô�)ô ó )ð\ €ô#�iô #ô%
r'   