a ze@s~dZddlZddlZddlZddlmZmZmZmZGdddejZ GdddejZ Gdd d ejZ e d krze dS) z"Test cases for the fnmatch module.N)fnmatch fnmatchcase translatefilterc@sZeZdZdefddZddZddZdd Zd d Zd d Z ddZ ddZ ddZ dS)FnmatchTestCaseTcCs>|r ||||d||fn||||d||fdS)Nzexpected %r to match pattern %rz#expected %r not to match pattern %r) assertTrue assertFalse)selffilenamepatternZ should_matchfnr E/opt/bitninja-python-dojo/embedded/lib/python3.9/test/test_fnmatch.py check_match s  zFnmatchTestCase.check_matchcCs|j}|dd|dd|dd|dd|dd|dd|dd|dd|dd d |d d d |d d d |dd|d d|ddd |dd|dd|ddd |dddS)Nabcz?*?z???*z*???z???*zab[cd]zab[!de]zab[de]Faz??b\z[\]z[!\]zfoo barzfoo*zfoo bar z foo rr checkr r r test_fnmatchs&                 zFnmatchTestCase.test_fnmatchcCs |j}|dd|ddddS)NZ2aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz*a*a*a*a*a*a*a*a*a*aZ3aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFrrr r rtest_slow_fnmatch0s z!FnmatchTestCase.test_slow_fnmatchcCsD|ttdd|ttdd|ttdd|ttdddSNtest*testr) assertRaises TypeErrorrrr r r rtest_mix_bytes_str7sz"FnmatchTestCase.test_mix_bytes_strcCsz|j}|dddt|dddt|dddt|dddt|dddt|dddt|dddt|dddtdS)NrTAbCFusr/binusr\bin)rrrr r rtest_fnmatchcase=sz FnmatchTestCase.test_fnmatchcasecCs(|dd|dd|dddS)Nrste*stestste*sfoo barsfoo*rr!r r r test_bytesIs  zFnmatchTestCase.test_bytescCsNtjdtjdk}|j}|dd|dd||dd||dddS)NABCrr#ospathnormcaser)r ignorecaserr r r test_caseNs    zFnmatchTestCase.test_casecCsNtjdtjdk}|j}|dd|dd||dd||dddS)Nr/r$r%r))r normseprr r rtest_sepVs    zFnmatchTestCase.test_sepcCszt^tdt|j}|dd|dd|dd|dd |d d |d d Wdn1sl0YdS)Nerror[z[[]&z[a&&b]|z[a||b]~z[a~~b],z [a-z+--A-Z].z [a-z--/A-Z])warningscatch_warnings simplefilterWarningrrr r r test_warnings^s       zFnmatchTestCase.test_warningsN) __name__ __module__ __qualname__rrrrr"r&r'r.r1r=r r r rr s  rc@seZdZddZdS)TranslateTestCasec Csddl}|tdd|tdd|tdd|tdd |td d |td d |tdd|tdd|tdd|tdd|tdd|tdd|tddtd}|d|}|t|d||d|d||d|d d!|d}d!|d}||d"|d#|d$|d#|d% td&}td'}td(}d)|||g} ||| d*||| d+||| d,||| d-dS).Nrrz (?s:.*)\Z?z(?s:.)\Zza?b*z (?s:a.b.*)\Zz[abc]z (?s:[abc])\Zz[]]z (?s:[]])\Zz[!x]z (?s:[^x])\Zz[^x]z (?s:[\^x])\Zz[xz (?s:\[x)\Zz*.txtz(?s:.*\.txt)\Zz *********z A*********z (?s:A.*)\Zz *********Az (?s:.*A)\ZzA*********?[?]?z(?s:A.*.[?].)\Zz **a*a****az\d+gz (?s:(?=(?P.*?a))(?P=z)(?=(?Pr?r@rPr r r rrAjsrAc@s,eZdZddZddZddZddZd S) FilterTestCasecCs8|tgddddg|tgddddgdS) N)PythonZRubyPerlZTclzP*rRrS)PythonsRubyPerlsTclsP*rTrU)rIrr!r r r test_filters zFilterTestCase.test_filtercCs(|ttdgd|ttdgddSr)rr rr!r r rr"sz!FilterTestCase.test_mix_bytes_strcCsdtjdtjdk}|tgdd|r4ddgndg|tgdd|rXddgndgdS)NPp)Test.pyzTest.rbTest.PLz*.p*rYrZz*.P*r*r+r,rIr)r r-r r rr.szFilterTestCase.test_casecCsdtjdtjdk}|tgdd|r4ddgndg|tgdd|rXddgndgdS)Nrr/)r$Zusrusr\libzusr/*r$r\zusr\*r[)r r0r r rr1szFilterTestCase.test_sepN)r>r?r@rVr"r.r1r r r rrQsrQ__main__)__doc__Zunittestr*r9rrrrZTestCaserrArQr>mainr r r rsa)