
    X-Ph                        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mZmZmZmZ dgZ G d	 d
e          ZdS )z>Test cases for inferring always defined attributes in classes.    )annotationsN)CompileError)test_temp_dir)DataDrivenTestCase)ICODE_GEN_BUILTINSMypycDataSuiteassert_test_outputbuild_ir_for_single_file2%infer_ir_build_options_from_test_nameuse_custom_builtinszalwaysdefined.testc                      e Zd ZeZeZddZdS )TestAlwaysDefinedtestcaser   returnNonec                p   t          |j                  }|dS t          t          j                            | j        t                    |          5  	 t          |j	        |          d         }g }|j
        D ]p}|j                            d          r|                    d                    |j        d                    t          |j                                                 qn# t           $ r}|j        }Y d}~nd}~ww xY wt%          ||d|j                   ddd           dS # 1 swxY w Y   dS )z4Perform a runtime checking transformation test case.Nr   _z{}: [{}]z, zInvalid test output)r   namer   ospathjoindata_prefixr   r
   inputclasses
startswithappendformatsorted_always_initialized_attrsr   messagesr	   output)selfr   optionsiractualcles          ]/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/mypyc/test/test_alwaysdefined.pyrun_casezTestAlwaysDefined.run_case   s   7FF?F d.>@R!S!SU]^^ 	Y 	Y.x~wGGJ *  Bw))#.. ! MM"))"'499VBD`=a=a3b3bcc   	   $ $ $$ x1FXXX	Y 	Y 	Y 	Y 	Y 	Y 	Y 	Y 	Y 	Y 	Y 	Y 	Y 	Y 	Y 	Y 	Y 	Ys=   D+C).A;D+)
D3C?:D+?DD++D/2D/N)r   r   r   r   )__name__
__module____qualname__filesr   	base_pathr)        r(   r   r      s8        EIY Y Y Y Y Yr0   r   )__doc__
__future__r   os.pathr   mypy.errorsr   mypy.test.configr   mypy.test.datar   mypyc.test.testutilr   r   r	   r
   r   r   r-   r   r/   r0   r(   <module>r8      s    D D " " " " " "  $ $ $ $ $ $ * * * * * * - - - - - -                
Y Y Y Y Y Y Y Y Y Yr0   