NL iddlmZddlZddlmZddlmZmZmZddl m Z ddl m Z m Z ddlmZGdd ej Zy) ) annotationsN)assert_string_arrays_equal)EmitterEmitterContext ReturnHandler)generate_arg_check)int_rprimitivelist_rprimitive) NameGeneratorc,eZdZddZddZddZddZy) TestArgCheckc:ttdgg|_y)Nmod)rr context)selfs a/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/mypyc/test/test_emitwrapper.pysetUpzTestArgCheck.setUp s%meWI&>? ct|j}tdt|t d|j }|j gd|y)NxNULL)zPyObject *arg_x;z if (likely(PyList_Check(obj_x)))z arg_x = obj_x;else {z! CPy_TypeError("list", obj_x);z return NULL;})rrrr r fragments assert_linesremitterliness rtest_check_listzTestArgCheck.test_check_listsF$,,'3-:OP!!    rct|j}tdt|t dtdt|t dd|j }|j gd|y)NrryT)optional)zCPyTagged arg_x;z if (likely(PyLong_Check(obj_x)))z. arg_x = CPyTagged_BorrowFromObject(obj_x);rz- CPy_TypeError("int", obj_x); return NULL;rzCPyTagged arg_y;zif (obj_y == NULL) {z arg_y = CPY_INT_TAG;z'} else if (likely(PyLong_Check(obj_y)))z. arg_y = CPyTagged_BorrowFromObject(obj_y);rz- CPy_TypeError("int", obj_y); return NULL;r)rrrr rrrrs rtest_check_intzTestArgCheck.test_check_int!s\$,,'3v9NO3v9NY]^!!   # rcd|Dcgc]}|jd}}t||dycc}w)N zInvalid output)rstripr)rexpectedactuallines rrzTestArgCheck.assert_lines:s0067$++d#77"8V5EF8s-N)returnNone)r' list[str]r(r,r*r+)__name__ __module__ __qualname__rrr#rrrr r s@ " 2Grr ) __future__runittestmypy.test.helpersrmypyc.codegen.emitrrrmypyc.codegen.emitwrapperrmypyc.ir.rtypesr r mypyc.namegenr TestCaser r0rrr9s1"8EE8;'0G8$$0Gr