L iTddlmZddlmZGddeZdZdZGdd eZy ) )greenlet)TestCasec,eZdZdZdZdZdZdZeZy)genletNc ||_||_yN)argskwds)selfr r s c/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/greenlet/tests/test_generator.py__init__zgenlet.__init__s  cX|j\}||ji|jyr )fnr r )r rs r runz genlet.run s"gg DII##rc|Sr )r s r __iter__zgenlet.__iter__s rchtj|_|j}|r|Str )r getcurrentparentswitch StopIteration)r results r __next__zgenlet.__next__s+))+  Mr) __name__ __module__ __qualname__rrrrrnextrrr rrs" F$ Drrctj}t|ts*| t d|j }t|ts*|j j |y)Nzyield outside a genlet)rr isinstancer RuntimeErrorrr)valuegs r Yieldr&sRAF# 978 8 HHF#HHOOErc*Gfddt}|S)NceZdZWfZy)generator..GeneratorN)rrrr)funcsr Generatorr)(s Wrr+)r)r*r+s` r generatorr,'sF rceZdZdZy)GeneratorTestscgfd}t|}tdD] }|dD]}j|"|jdgdzy)Nc^t|D]}j|t| yr )rangeappendr&)niseens r r%z(GeneratorTests.test_generator..g3s(1X  Aa r) rrrrr8r6r6r9)r,r1r2 assertEqual)r r%_jr5s @r test_generatorzGeneratorTests.test_generator0sa  aLq AqT  A   q#AABrN)rrrr=rrr r.r./s Crr.N)rrrr&r,r.rrr r?s/X0 CX Cr