
    9\h                     <   d Z ddlZddlZddlmZ ddlZ ej                    Z ej        d          s ej	        d          ej
                            e          rej
                            e          s ej	        d           G d d	ej                  ZdS )
z
Tests for `Makefile`.
    N)supportT)cpythonzcpython onlyzMakefile could not be foundc                       e Zd Zd Zd ZdS )TestMakefilec                    g }d}t          t          dd          5 }|D ]}|                    d          rQd}|                    |                    d                              dd                                                     h|rAd	|vr n<|                    |                    dd                                                     d d d            n# 1 swxY w Y   d
 |D             }|S )NFrzutf-8)encodingzTESTSUBDIRS=T\ 	c                 H    g | ]}|                     d           s|dk    | S )ztest/test)
startswith).0ds     G/opt/python-3.11.14/usr/lib/python3.11/test/test_tools/test_makefile.py
<listcomp>z/TestMakefile.list_test_dirs.<locals>.<listcomp>'   s.    LLLq||G'<'<LV!    )openMAKEFILEr   appendremoveprefixreplacestrip)selfresultfound_testsubdirsflines        r   list_test_dirszTestMakefile.list_test_dirs   sZ   !(C'222 	Ba B B??>22 (,%MM)).99AA " %''  
 $ B4''MM$,,tR"8"8">">"@"@AAA	B 	B 	B 	B 	B 	B 	B 	B 	B 	B 	B 	B 	B 	B 	B" MLVLLLs   B/CCCc                    |                                  }g }t          j        t          j                  D ]\  }}}t          j                            |          }|dk    r,t          j                            |t          j                  }| 	                    |          5  | 
                    |||d           |                    |           d d d            n# 1 swxY w Y   t          |          }|                     |t          |                     |                     t          |          t          |                     d S )N__pycache__)relpathzF is not included in the Makefile's list of test directories to install)msg)r    oswalkr   TEST_HOME_DIRpathbasenamer#   
STDLIB_DIRsubTestassertInr   setassertSetEqualassertEquallen)r   	test_dirsuseddirpath_dirnamer#   unique_test_dirss           r   test_makefile_test_foldersz'TestMakefile.test_makefile_test_folders+   s|   ''))	WW%:;; 	% 	%MGQg&&w//G-''googw/ABBGg.. 	% 	%" 9 9 9	     G$$$	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% y>>,c$ii888Y-=)>)>?????s   !1CC"	%C"	N)__name__
__module____qualname__r    r7    r   r   r   r      s7          0@ @ @ @ @r   r   )__doc__r%   unittestr   r   	sysconfigget_makefile_filenamer   check_impl_detailSkipTestr(   existsisfileTestCaser   r;   r   r   <module>rE      s     
			           *9*,, w ... ,
(
N
+
++	w~~h ;rw~~h'?'? ;
(
9
:
::1@ 1@ 1@ 1@ 1@8$ 1@ 1@ 1@ 1@ 1@r   