
    3j                    R   d Z ddlmZ ddlmZ ddlZddlZddlZddlZddl	m
Z
 ddl	mZ ddlmZ ddlmZ dd	lmZ  ej                   d
      Z ej$                         Z	 	 	 	 	 d	 	 	 ddZd Zedk(  r3 eej0                        dk\  r eej0                  dd       Zy e       Zyy)zo
Controller to run all module tests in the music21 folders.

Runs great, but slowly on multiprocessor systems.
    )annotations)SequenceN)common)environment)
commonTest)coverageM21)
testRunnerztest.testSingleCoreAll   c                   | D ]  }|dvst        d|        t        j                          t        j                  t              }t        j
                         }|j                  |      }t        j                  d       d}	t        j                  j                  |      }
|
D ]  }g }||	|kD  r ny|	dz  }	t        |d      st        j                  | d       nd	| v r|j                  |j                         t        |d
      sn2d| v r.|sd|j                  _        |j                  |j                         |D ]2  }t"        j$                  j'                  |      }|j)                  |       4 | dk(  r	 t        j                  |      }|j)                  |       t+        |      D cg c]  }t-        ||       }}t/        d      j0                  j3                         }t4        j6                  t4        j8                  z  }t;        j<                  |||j>                  ||        t;        j@                  |       t        j                  d       tC        jD                         5  tC        jF                  dtH               tC        jF                  dtJ               t#        jL                  |      }|jO                  |      }ddd       tQ        jR                  tT               jV                  s|jX                  s|jZ                  rd}|S d}|S # t         $ r t        j                  | d       Y w xY wc c}w # 1 sw Y   {xY w)zc
    Run all tests. Group can be 'test' and/or 'external'.
    External will not run doctests.
    )testexternalz1Valid test groups are 'test' and 'external'; got zlooking for Test classes...
r   N   Testz has no Test classr   TestExternalr   Fr   z cannot load Doctestsmusic21)outerFilenameglobsoptionflagszrunning Tests...
onceignore)	verbosity).
ValueErrorr   testImportsdefaultDoctestSuite__name__ModuleGatherloadenvironLocal
printDebugr   miscsortModuleshasattrappendr   r   showunittestdefaultTestLoaderloadTestsFromTestCaseaddTestsdirgetattr
__import____dict__copydoctestELLIPSISNORMALIZE_WHITESPACEr	   addDocAttrTestsToSuite__file__fixDoctestswarningscatch_warningssimplefilterRuntimeWarningFutureWarningTextTestRunnerrunr   stopCoveragecoverrorsfailuresunexpectedSuccesses)	testGrouprestoreEnvironmentDefaultslimitr   r%   groups1	modGathermodulestotalModulessortModsmoduleObjectunitTestCasestestCases2s3x	allLocalsr   docTestOptionsrunnerfinalTestResults
returnCodes                          K/DATA/.local/lib/python3.12/site-packages/music21/test/testSingleCoreAll.pymainrV   '   s    ,,PQVPWXYY  		'	'	1B'')Inn78G;<L{{&&w/H !e#|V,##|n4F$GH"$$\%6%67|^4 Y&5:L--2$$\%>%>? &H++AA(KBKKO & %	//=BKKO
 8;<7HI7H!W\1-7H	I9%..335!**W-I-II))"*38D8M8M056D		,O !^ 201		 	 	"fn5h6((9=!::b>	 
# S!((33
  
G  	##|n4I$JK	 J  
#	"s%   :&L-L<+AM!L98L9M
c                     t        dd      } t        j                  t               t        ddd      }t	        j
                  | |z          y )Nr   r   )rA   r   r   F)rA   r   r%   )rV   r   startCoverager=   sysexit)returnCodeTestreturnCodeExternals     rU   ciMainr^      s?    
 I;Nc"OHH^001    __main__r   )rX   FNr
   T)rA   zSequence[str]rC   zbool | Noner%   bool)__doc__
__future__r   collections.abcr   r/   rZ   r&   r5   r   r   r   music21.testr   r   r	   Environmentr   getCoverager=   rV   r^   r   lenargvunused_returnCode r_   rU   <module>rl      s   
 # $  
     # $ #&{&&'?@
 k %.$) 	[[ 	[|	2 z 388} !". F r_   