ML i dZddlmZddlZddlZddlZddlmZddlm Z ddl m Z ddl m Z ddlmZdd lmZmZdd lmZdd lmZmZdd lmZmZGd deZy)zDTest cases for AST diff (used for fine-grained incremental checking)) annotationsN)build) CompileError) BuildSource)MypyFile)Options)compare_symbol_table_snapshotssnapshot_symbol_table) test_temp_dir)DataDrivenTestCase DataSuite)assert_string_arrays_equal parse_optionsc"eZdZdgZddZddZy) ASTDiffSuitez diff.testc dj|j}t|j}|d}t ||d}|j t jkDrtjd|j||\}}|j||\}} g} |r| j||r"| jd| j||| Jdd} t| |dj} t| | dj} t| | | }t!|D]}| j|t#|j$| d|j&d |j(d y) N z tmp/next.pyz)Test case requires a newer Python versionz == next ==z3cases where CompileError occurred should not be run__main__zInvalid output (z, line ))joininputdictfilesrpython_versionsys version_infopytestskiprextendappendr namesr sortedroutputfileline)selftestcase first_src files_dict second_srcoptions messages1files1 messages2files2aprefix snapshot1 snapshot2difftriggers X/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/mypy/test/testdiff.pyrun_casezASTDiffSuite.run_casesaIIhnn- (..)  .  8Q7  ! !C$4$4 4 KKC D JJy': 6 JJz7; 6   HHY   HH\ " HHY   6#5 A @ A 5)&&2D2J2JK )&&2D2J2JK -fiKd| G HHW   # OOQ"28==/WX Y c d|_d|_tj|_d|_ t j tdd|g|t}|j|jfS#t$r}|jdfcYd}~Sd}~wwxYw)NTmain)sourcesr, alt_lib_path) use_builtins_fixturesshow_tracebackosdevnull cache_dirallow_empty_bodiesrrr rmessageserrorsr)r'sourcer,resultes r7rzASTDiffSuite.build8s(,%!%JJ%)" $[[$VT6:;*F}}fll** $::t# # $s(A,, B 5 BB B N)r(r returnNone)rFstrr,rrIz,tuple[list[str], dict[str, MypyFile] | None])__name__ __module__ __qualname__rr8rr9r7rrs ME @+r9r)__doc__ __future__rr@rrmypyr mypy.errorsrmypy.modulefinderr mypy.nodesr mypy.optionsrmypy.server.astdiffr r mypy.test.configr mypy.test.datar r mypy.test.helpersrrrrOr9r7r[s;J" $) U*8G1+91+r9