eKSrSSKrSSKrSSKrSSKrSSKrSSKrSSKJrJr SSK J r J r J r Sr \R"S\R5r"SS \ R"5rS rS rS rS rSr"SS\5r\"5rg)zLoading unittests.N)fnmatch fnmatchcase)casesuiteutilTz[_a-z]\w*\.py$c8^\rSrSrSrU4SjrU4SjrSrU=r$) _FailedTestNc8>X l[[U]U5 gN) _exceptionsuperr __init__)self method_name exception __class__s 5/opt/imh/python3.13/lib/python3.13/unittest/loader.pyr_FailedTest.__init__s# k4)+6c\>^UTR:wa[[T]U5$U4SjnU$)Nc>TRer rrsr testFailure,_FailedTest.__getattr__..testFailure s // !r)_testMethodNamerr __getattr__)rnamerrs` rr_FailedTest.__getattr__s. 4'' 'd7= = "rr) __name__ __module__ __qualname____firstlineno__rrr__static_attributes__ __classcell__rs@rr r sO7rr chSU<S[R"5<3n[U[U5X5$)NzFailed to import test module:  ) traceback format_exc_make_failed_test ImportError)r suiteClassmessages r_make_failed_import_testr1%s+ i""$&G T;w#7 MMrcLS[R"5<3n[XX#5$)NzFailed to call load_tests: )r+r,r-)r rr/r0s r_make_failed_load_testsr3*s%2;2F2F2HJG   ..rc.[X5nU"U45U4$r )r ) methodnamerr/r0tests rr-r-/s z -D tg  ''rc[R"[U55S5nX0n[S[R4U5nU"U"U545$)Ncgr rs r testSkipped'_make_skipped_test..testSkipped4s r ModuleSkipped)rskipstrtypeTestCase)r5rr/r:attrs TestClasss r_make_skipped_testrC3sQ YYs9~   %E_t}}&6>I y,. //rcF[RRU5S$)Nr)ospathsplitext)rFs r _splitextrH;s 77  D !! $$rc^\rSrSrSrSr\"\R5r Sr \ Rr SrU4SjrSrSS.SjrSS jrSS jrS rSS jrS rSrSrSrSrSrSrU=r$) TestLoader?zu This class is responsible for loading tests according to various criteria and returning them wrapped in a TestSuite r6NcV>[[U] 5 /Ul[ 5Ulgr )rrJrerrorsset_loading_packages)rrs rrTestLoader.__init__Js# j$(* "%rc4[U[R5(a [S5eU[R [R 4;a/nO,URU5nU(d[US5(aS/nUR[X55nU$)z;Return a suite of all test cases contained in testCaseClasszYTest cases should not be derived from TestSuite. Maybe you meant to derive from TestCase?runTest) issubclassr TestSuite TypeErrorrr@FunctionTestCasegetTestCaseNameshasattrr/map)r testCaseClass testCaseNames loaded_suites rloadTestsFromTestCase TestLoader.loadTestsFromTestCaseQs mU__ 5 5() ) T]]D,A,AB BM 11-@M W]I%F%F!* s='HI rpatterncB/n[U5Hn[X5n[U[5(dM%[ U[ R 5(dMFU[ R [ R4;dMlURURU55 M [USS5nURU5nUb U"XU5$U$![aIn[URXpR5upURRU 5 UsSnA$SnAff=f)z>Return a suite of all test cases contained in the given module load_testsN)dirgetattr isinstancer?rSrr@rVappendr]r/ Exceptionr3r"rM) rmoduler`testsr objrbe error_case error_messages rloadTestsFromModuleTestLoader.loadTestsFromModuleasKD&'C3%%sDMM22 t/D/DEE T77<= V\48 &  ! "!$w77   ",COOQ-9)  ""=1!!  "sC D>DDDc URS5nSupEUc/USSnU(aSRU5n[U5nUSSnUn UHn U [X5pM [U [R 5(aUR#U 5$[U [$5(aT['U [(R*5(a5U [(R*[(R,4;aUR/U 5$[U [R05(a|[W [$5(ag['U [(R*5(aHUSnU "U5n [[X5[R05(dUR U /5$O![U [2R45(aU $[7U 5(amU "5n[U[2R45(aU$[U[(R*5(aUR U/5$[9SU <S U<S 35e[9S U -5e![aP UR 5n[ XR 5upEU(dURRU5 Us$Of=fU(aGMGNf![an [U SS5b'Ub$URRU5 UsSn A s $[XUR S[R"5<35upEURRU5 UsSn A s $Sn A ff=f) a+Return a suite of all test cases given a string specifier. The name may resolve either to a module, a test case class, a test method within a test case class, or a callable object which returns a TestCase or TestSuite instance. The method optionally resolves the names relative to a given module. .)NNNr__path__zFailed to access attribute: zcalling z returned z , not a testz$don't know how to make test from: %s)splitjoin __import__r.popr1r/rMrfrdAttributeErrorr-r+r,retypes ModuleTypernr?rSrr@rVr] FunctionTyperrTcallablerU)rr rhpartsrlrm parts_copy module_namenext_attributerjpartparentrkinstr6s rloadTestsFromNameTestLoader.loadTestsFromNameys 3$.! >qJ *"%((:"6K' 4F!"IED &!73#5. c5++ , ,++C0 0 sD ! !3 ..DMM4+@+@AA--c2 2e0011&&//9D$". KK&&}5%%1B%002516-JKK&&}5%%% &s=I J)AJJ) M3-L< M(A L<4M<McnUVs/sHo0RX25PM nnURU5$s snf)zqReturn a suite of all test cases found using the given sequence of string specifiers. See 'loadTestsFromName()'. )rr/)rnamesrhr suitess rloadTestsFromNamesTestLoader.loadTestsFromNamess8DII54((65Iv&&Js2c^^UU4Sjn[[U[T555nTR(a-UR [ R "TR5S9 U$)zLReturn a sorted sequence of method names found within testCaseClass c">^URTR5(dg[TU5n[U5(dgSTRTR U4-mTR SL=(d [U4SjTR 55$)NFz%s.%s.%sc3<># UHn[TU5v M g7fr )r).0r`fullNames r KTestLoader.getTestCaseNames..shouldIncludeMethod..sXBWwK'22BWs) startswithtestMethodPrefixrdr|r#r$testNamePatternsany)attrnametestFuncrrrZs @rshouldIncludeMethod8TestLoader.getTestCaseNames..shouldIncludeMethods&&t'<'<==}h7HH%%!((-*D*Dh&H((D0YX$BWBWXX Yr)key)listfilterrcsortTestMethodsUsingsort functools cmp_to_key)rrZr testFnNamess`` rrWTestLoader.getTestCaseNamessS Y6"5s=7IJK  $ $   !5!5d6O6O!P  QrcURnSnUcURb URnOUcSnUn[RRU5nU[R;a [RR SU5 X0lSn[RR [RRU55(ag[RRU5nX:waB[RR[RRUS55(+nO[U5 [RUnURS5Sn[RR[RRUR55nU(a5UR%U5Ul[RR'U5 U(a[)S U-5e[+UR-X55n X@lUR/U 5$![a; UR[R ;a [#S5Se[#SU<35Sef=f![(a SnNf=f) a}Find and return all test modules from the specified start directory, recursing into subdirectories to find them and return all tests found within them. Only test files that match the pattern will be loaded. (Using shell style pattern matching.) All test modules must be importable from the top level of the project. If the start directory is not the top level directory then the top level directory must be specified separately. If a test package name (directory with '__init__.py') matches the pattern then the package will be checked for a 'load_tests' function. If this exists then it will be called with (loader, tests, pattern) unless the package has already had load_tests called from the same discovery invocation, in which case the package module object is not scanned for tests - this ensures that when a package uses discover to further discover child tests that infinite recursion does not happen. If load_tests exists then discovery does *not* recurse into the package, load_tests is responsible for loading all tests in the package. The pattern is deliberately not stored as a loader attribute so that packages can continue discovery themselves. top_level_dir is stored so load_tests does not need to pass this argument in to loader.discover(). Paths are sorted before being imported to ensure reproducible execution order even on filesystems with non-alphabetical ordering like ext3/4. FNTr __init__.pyrqz2Can not use builtin modules as dotted module namesz don't know how to discover from z%Start directory is not importable: %r)_top_level_dirrErFabspathsysinsertisdirisfilerurvmodulesrtdirname__file__rxr"builtin_module_namesrU _get_directory_containing_moduleremover.r _find_testsr/) r start_dirr` top_level_diroriginal_top_level_dirset_implicit_topis_not_importable the_moduletop_partris rdiscoverTestLoader.discovers8"&!4!4   T%8%8%D //M  "# %M 6 ( HHOOA} -+! 77==3 4 4 2I)(*rww||I}7](^$^! 39%![[3 $??3/2 ( ")<)<>!@I$*.*O*OPX*YD'HHOOM2 E QR RT%%i9:4u%%'&(!**c.F.FF')ABGKL(>znM#'( ( )$(! )s 7 I:*AH22AI7: J J c[RUn[RR UR 5n[RR U5R5RS5(a<[RR[RRU55$[RRU5$)Nr) rrrErFrrbasenamelowerrr)rrrh full_paths rr+TestLoader._get_directory_containing_module:s[)GGOOFOO4 77  I & , , . 9 9- H H77??277??9#=> > 77??9- -rcXR:Xag[[RR U55n[RR XR5n[RR U5(aS5eURS5(aS5eUR[RRS5nU$)NrqzPath must be within the projectz..) rrHrErFnormpathrelpathisabsrreplacesep)rrF_relpathr s r_get_name_from_pathTestLoader._get_name_from_pathFs && &))$/077??4)<)<=77==**M,MM*&&t,,O.OO, S1 rc>[U5 [RU$r )rvrr)rr s r_get_module_from_name TestLoader._get_module_from_nameRs4{{4  rc[X5$r )r)rrFrr`s r _match_pathTestLoader._match_pathVs t%%rc#v# URU5nUS:wa1X0R;a"URX5upEUbUv U(dg[[R "U55nUHn[R RX5nURX5upEUbUv U(dMEURU5nURRU5 URX5ShvN URRU5 M gN$!URRU5 f=f7f)z/Used by discovery. Yields test suites it loads.rqN) rrO_find_test_pathsortedrElistdirrFruaddrdiscard) rrr`r rishould_recursepathsrFrs rrTestLoader._find_testsZs'' 2 3;4'='==%)$8$8$L !E  !rzz),-D Y5I$($8$8$L !E  ~// :&&**409#// CCC**2248D**2248s6B+D91,D9D2D3D7 D9DD66D9c[RRU5n[RRU5(Gaz[R U5(dgUR X1U5(dgURU5nURU5n[RR[USU55n[[RRU55n[[RRU55nUR5UR5:waw[RRU5n [[RRU55n [RRU5n Sn [XX4-5eUR!XRS9S4$[RR1U5(a[RR[RR3US55(dgSnSnURU5nURU5n[USS5nUR4R7U5 UR!UUS9nUbUS4UR4R9U5 $US 4UR4R9U5 $g!["R$a"n ['XMUR(5S4sSn A $Sn A f [+X@R(5upUR,R/U5 US4s$=f!UR4R9U5 f=f!["R$a"n ['XMUR(5S4sSn A $Sn A f [+X@R(5upUR,R/U5 US4s$=f) zUsed by discovery. Loads tests from a single file, or a directories' __init__.py when passed the directory. Returns a tuple (None_or_tests_from_file, should_recurse). )NFrzW%r module incorrectly imported from %r. Expected %r. Is this module globally installed?r_FNrrbT)rErFrrVALID_MODULE_NAMEmatchrrrrrdrHrealpathrrr.rnrSkipTestrCr/r1rMrfrrurOrr)rrr`rr rhmod_filerfullpath_noext module_dirmod_name expected_dirmsgrkrlrmrbripackages rrTestLoader._find_test_pathzs 77##I. 77>>) $ $$**844"##HAA"++I6D P33D977??FJ :<$GG$$X.0!*GG$$Y/"1>>#~';';'==!#!:J(((3 5H#%77??9#=LDC%BBDD///H%OO WW]]9 % %77>>"'',,y-"HII"JE++I6D 944T:%WlDA &&**409 44Wg4NE!-$e|**2248!$;**2248k== K)$4??CUJJ ),T??C*  ""=1!5((Z**2248%== K)$4??CUJJ ),T??C*  ""=1!5((sN K<M6L9(L9L6K93L69;L69MO-N O ;O)rOrrMr )ztest*.pyN)r"r#r$r%__doc__r staticmethodr three_way_cmprrrrTr/rrr]rnrrrWrrrrrrrr&r'r(s@rrJrJ?s'(:(:;JN' 6:0PJd'&S&j . !&9@HHrrJ)rrErerr+ryrrrrrr __unittestcompile IGNORECASErr@r r1r3r-rCrHobjectrJdefaultTestLoaderr9rrrs  (  JJ0"--@ $-- N . (0%CCL Lr