yO-HddlZddlZddlmZddlmZmZmZmZm Z m Z ej dGddZ Gd d Z ej dGd d ZGd dejZdeeefdeeeefzfdZdS)N)Any)StrJSONTestName FilterTupleformat_durationnormalize_test_name print_warningT)slotscleZdZUdZeed<dZeed<dZeed<edZ edZ dZ dS) TestStatsr tests_runfailuresskippedcvt|jt|jt|jSN)r testsRunlenrr)results >/opt/alt/python311/lib64/python3.11/test/libregrtest/result.py from_unittestzTestStats.from_unittests2V_--V^,,.. .cBt|j|j|jSr)r attemptedfailedr)resultss r from_doctestzTestStats.from_doctests#*  ** *rc|xj|jz c_|xj|jz c_|xj|jz c_dSr)rrr)selfstatss r accumulatezTestStats.accumulates< %/) '   % rN) __name__ __module__ __qualname__rint__annotations__rr staticmethodrrr!rrr r sIsHcGS..\. **\* &&&&&rr ceZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zed ZedZedZdS)StatePASSEDFAILEDSKIPPED UNCAUGHT_EXCREFLEAK ENV_CHANGEDRESOURCE_DENIED INTERRUPTED WORKER_FAILED WORKER_BUG DID_NOT_RUNTIMEOUTc|tjtjtjtjtjtjhvSr)r*r,r.r/r3r4r6states r is_failedzState.is_failed1s5 L   M     M  rc|tjtjtjtjtjtjhvSr)r*r-r1r2r3r4r5r8s rhas_meaningful_durationzState.has_meaningful_duration;s9  M  !          rc6|tjtjhvSr)r*r2r4r8s r must_stopzState.must_stopIs        rN)r"r#r$r+r,r-r.r/r0r1r2r3r4r5r6r'r:r<r>r(rrr*r*#s F FG!LGK'OK#MJKG\  \   \   rr*cReZdZUeed<dZedzed<dZedzed<dZ e edzed<dZ e dzed<dZ e eeefdzed<dZe eeefdzed<d ed efd Zd Zd efd ZdZdZded ed efdZd edzfdZddZeded dfdZdS) TestResult test_nameNr9durationxml_datar errorsrfail_env_changedreturncn|jtjkr|St|jSr)r9r*r0r:)rrEs rr:zTestResult.is_failed^s, :* * *# #tz***rc |jr_|jrXt|j}t|j}d|dkrdndz}d|dkrdndz}|jd|d|d|d|d S|jr1t|j}d|dkrdndz}|jd|d|d S|jr1t|j}d|dkrdndz}|jd|d|d S|jd S) Nerrorrsfailurez failed ( z, )z failed)rDrrrA)rlelferror_s failure_ss r_format_failedzTestResult._format_failedcsD ; Q4= QT[!!BT]##BQB7G!BFFSS;InPPrPPGPPrPPIPPP P ; ?T[!!BQB7Gn>>r>>G>>> > = AT]##B!BFFSS;In@@r@@I@@@ @.))))rc|jxtjkr |jdSxtjkr|Sxtjkr |jdSxtjkr |jdSxtjkr |jdSxtj kr |jdSxtj kr |jdSxtj kr |jdSxtj kr |jdSxtj kr |jd Sxtjkr |jd Stjkr|jd t!|jd S t%d )Nz passedz skippedz failed (uncaught exception)z failed (reference leak)z failed (env changed)z skipped (resource denied)z interruptedz worker non-zero exit codez worker bugz ran no testsz timed out (rNzunknown result state: {state!r})r9r*r+rAr,rSr-r.r/r0r1r2r3r4r5r6rrB ValueErrorrs r__str__zTestResult.__str__wsj.1111**,,,.2222#####.FFFF.BBBB""""".????&&&&&.DDDD""""".6666$$$$$.DDDD!!!!!.5555""""".7777.WWodm6T6TWWWW !BCCCrc@t|jSr)r*r<r9rVs rr<z"TestResult.has_meaningful_durations,,TZ888rcd|j|jtjkrtj|_dSdSr)r9r*r+r0rVs rset_env_changedzTestResult.set_env_changeds. : u|!;!;*DJJJ"r9r:)rr[rEs rr>zTestResult.must_stopsC ??4: & & 4  (899 4urc g}|jpg}|jpg}|df|dffD]Z\}}|D]R^}}t||}|dS|s |rdnd} td| d|ddS||S[|sdSt |S) NTF)is_errorERRORFAILzrerun failed to parse z test name: z: don't filter tests)rDrr r appendtuple) r match_testsrDr error_listr^ full_name_ match_name error_types rget_rerun_match_testsz TestResult.get_rerun_match_testss "=&B TN u %  / / J", / / A0XNNN %444! ,4!@&J!#G:#G#G%.#G#G#GHHH444"":.... / 4[!!!rc>tj||tdS)N)cls)jsondump_EncodeTestResult)rfiles rwrite_json_intozTestResult.write_json_intos  $"3444444r worker_jsonc8tj|tS)N) object_hook)rlloads_decode_test_result)rqs r from_jsonzTestResult.from_jsonsz+3FGGGGr)rFN)r"r#r$rr&r9strrBfloatrClistr r rDrbrboolr:rSrWr<rZr>rrirpr'rrvr(rrr@r@QsE3:!Hedl!!!!%Hd3i$%%%"E9t """,0FDsCx !D (///-1Hd5c?#d*111+$+4++++ ***(DDDDD:999+++44D"{T'9""""25555HwH<HHH\HHHrr@c8eZdZdedeeefffd ZxZS)rnorFct|tr%tj|}|jj|d<|St |S)N__test_result__) isinstancer@ dataclassesasdict __class__r"superdefault)rr|rrs rrz_EncodeTestResult.defaultsP a $ $ & '**F() (|d|dtdi|d|d<tdi|S|S)Nr~r r()popr r@)rs rrurus^D   "### = $%66W 66DM!!D!!! r)rrltypingrutilsrrrrr r dataclassr r*r@ JSONEncoderrnrrwrur(rrrs 9999999999999999 T"""&&&&&&&#"&0+ + + + + + + + \T"""nHnHnHnHnHnHnH#"nHb&&&&&(&&&d38nd38n1Lr