bg FddlmZddlmZddlmZGddeZdS))Adapter) Directive)ResultcVeZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd S)Rulesc8||_||_gdgd|_dS)Nr)plantestversion) _filename_suite _lines_seen)selffilenamesuites Z/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/tap/rules.py__init__zRules.__init__s(! $&bAAcr|jdr|||dS)z;Check the status of all provided data and update the suite.r N)r_process_version_lines_process_plan_lines)rfinal_line_counts rcheckz Rules.check s?  I & *  ' ' ) ) )   !122222rct|jddkr|ddS|jdddkr|ddSdS)zProcess version line rules.r z Multiple version lines appeared.rz&The version must be on the first line.N)lenr _add_errorrs rrzRules._process_version_linesso t * + +a / / OO> ? ? ? ? ?  i ( +q 0 0 OOD E E E E E1 0rc|jds|ddSt|jddkr|ddS|jdd\}}|||s|ddS|j|jdkr<|d |j|jd dSdS) zProcess plan line rules.r zMissing a plan.Nrz)Only one plan line is permitted per file.rz7A plan must appear at the beginning or end of the file.r z:Expected {expected_count} tests but only {seen_count} ran.)expected_count seen_count)rrr_plan_on_valid_lineexpected_testsformat)rrr at_lines rrzRules._process_plan_liness '  OO- . . . F t' ( (1 , , OOG H H H F(03 g''1ABB  OOU V V V F  $"26": : : OOLSS#'#6#/7T      ; :rc~|dks||krdS|jdo|jdddko|dk}|rdSdS)z#Check if a plan is on a valid line.rTr rFr)rr%r after_versions rr"zRules._plan_on_valid_line0si a<<7&6664  Y '  +A.!3 1    4urcb|d|jdS)zHandle a bail line.zBailed: {reason})reasonN)rr$r+)rbails r handle_bailzRules.handle_bailAs. *111EEFFFFFrcb|d|jdS)z'Handle a test file that does not exist.z{filename} does not exist.)rN)rr$r rs rhandle_file_does_not_existz Rules.handle_file_does_not_existEs. 4;;T^;TTUUUUUrctdd|jjtd}|jt |j|dS)z-Handle a plan that contains a SKIP directive.TNSKIP)r directivetextrr addTestrr )r skip_plan skip_lines rhandle_skipping_planzRules.handle_skipping_planIsK4y':'?6ARARSS  GDNI>>?????rcJ|jd||fdS)z!Record when a plan line was seen.r Nrappend)rr r%s rsaw_planzRules.saw_planNs(  ''w88888rc0|jdxxdz cc<dS)z!Record when a test line was seen.r rNr(rs rsaw_testzRules.saw_testRs'    A%     rcF|jd|dS)z$Record when a version line was seen.r Nr9)r line_counters rsaw_version_atzRules.saw_version_atVs$ #**<88888rctdd|td}|jt |j|dS)zAdd an error test to the suite.FN)rrr r4rr )rmessage error_lines rrzRules._add_errorZsCE4)B--@@  GDNJ??@@@@@rN)__name__ __module__ __qualname__rrrrr"r-r/r7r;r=r@rrrrrsBBB 333 FFF."GGGVVV@@@ 999&&&999AAAAArrN) tap.adapterr tap.directivertap.linerobjectrrHrrrMs######WAWAWAWAWAFWAWAWAWAWAr