
    ,hc                        d dl Z d dlZd dlZd dlZd dlZdej
                  v ZdddZd Zd'dZ	d(dZ
ej                  j                  ej                  d	k\  d
      Zed        Zd Zej                  j#                  dd      d        Zd Zd ZdZej                  j-                  d      ej                  j/                  d ej0                  dde       ej0                  dde       ej0                  dde      dddg      d               ZdZej                  j-                  d      ej                  j/                  d d! ej0                  de      g      d"               Zd#Zej                  j-                  d      ej                  j/                  dd$ ej0                  dd%e      g      d&               Zy))    N__pypy__Tzutf-8)textencodingc                 d    | r-t        j                         dk(  rt        j                  d   | d<   | S )z
    On Windows, SYSTEMROOT must be present to avoid

    > Fatal Python error: _Py_HashRandomization_Init: failed to
    > get random numbers to initialize Python
    Windows
SYSTEMROOT)platformsystemosenvironenvs    j/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/setuptools/tests/test_distutils_adoption.pywin_srr      s-     x I-JJ|4LJ    c                      dj                   di t               }dd|g} | j                  |fdt        |      it        |S )Nz+import {imports}; print(distutils.__file__)python-cr    )formatlocalsrunr   _TEXT_KWARGS)venvimportsr   kwargspy_cmdcmds         r   find_distutilsr      sJ    A:AAMFHMFT6
"C488CCVC[CLCFCCr   c           	          t        j                  d      }dd|g}t         | j                  |fdt	        |      it
              S )Nz
        import sys
        is_distutils = lambda finder: finder.__class__.__name__ == "DistutilsMetaFinder"
        print(len(list(filter(is_distutils, sys.meta_path))))
        r   r   r   )textwrapdedentintr   r   r   )r   r   r   r   s       r   count_meta_pathr$      sG    __	F T6
"Cxtxx===>>r   )      z-stdlib distutils is removed from Python 3.12+)reasonc                     t        d      }| j                  t        | |      j                  t        j
                        vsJ t        | |      dk(  sJ y)z;
    Ensure stdlib distutils is used when appropriate.
    stdlibSETUPTOOLS_USE_DISTUTILSr   r   Ndictnamer   splitr   sepr$   r   r   s     r   test_distutils_stdlibr2   1   sH    
 
1C99N4S9??GGG4S)Q...r   c                     t        d      }t        | d|      }| j                  |j                  t        j
                        v sJ t        | |      dk  sJ y)z:
    Ensure local distutils is used when appropriate.
    localr*   zsetuptools, distutils)r   r   r      N)r-   r   r.   r/   r   r0   r$   )r   r   locs      r   $test_distutils_local_with_setuptoolsr7   ;   sN     
0C
'>C
HC99		"&&)))4S)Q...r   IS_PYPYz!pypy imports distutils on startupc                     t        d      }| j                  t        | |      j                  t        j
                        v sJ t        | |      dk  sJ y)zZ
    Even without importing, the setuptools-local copy of distutils is
    preferred.
    r4   r*   r   r5   Nr,   r1   s     r   test_distutils_localr:   E   sH     
0C99t5;;BFFCCC4S)Q...r   c                 :    g d} | j                   |fi t         y)zD
    Ensure pip can be imported.
    Regression test for #3002.
    )r   r   z
import pipN)r   r   )r   r   s     r   test_pip_importr<   P   s    
 )CDHHS!L!r   c                  F    t        d      j                  j                  sJ y)z=
    Distutils module spec should have an origin. #2990.
    	distutilsN)
__import____spec__originr   r   r   test_distutils_has_originrB   Y   s     k"++2222r   a8  
# Depending on the importlib machinery and _distutils_hack, some imports are
# duplicated resulting in different module objects being loaded, which prevents
# patches as shown in #3042.
# This script provides a way of verifying if this duplication is happening.

from distutils import cmd
import distutils.command.sdist as sdist

# import last to prevent caching
from distutils import {imported_module}

for mod in (cmd, sdist):
    assert mod.{imported_module} == {imported_module}, (
        f"\n{{mod.dir_util}}\n!=\n{{{imported_module}}}"
    )

print("success")

tmpdir_cwd)distutils_versionimported_moduler)   dir_util)marks	file_utilarchive_util)r4   rF   )r4   rH   )r4   rI   c                     t        |       }t        j                  |      }dd|g} |j                  |fdt	        |      it
        j                         }|dk(  sJ y )Nr*   rE   r   r   r   success)r-   !ENSURE_IMPORTS_ARE_NOT_DUPLICATEDr   r   r   r   strip)rD   rE   r   r   scriptr   outputs          r   )test_modules_are_not_duplicated_on_importrQ   u   sc     (9
:C.55o5VFT6
"CTXXc;vc{;l;AACFYr   z
import types
import distutils.dist as dist
from distutils import log
if isinstance(dist.log, types.ModuleType):
    assert dist.log == log, f"\n{dist.log}\n!=\n{log}"
print("success")
rD   r4   c                     t        |       }ddt        g} |j                  |fdt        |      it        j                         }|dk(  sJ y )Nr*   r   r   r   rL   )r-   #ENSURE_LOG_IMPORT_IS_NOT_DUPLICATEDr   r   r   rN   )rD   r   r   r   rP   s        r   +test_log_module_is_not_duplicated_on_importrT      sQ     (9
:CT>
?CTXXc;vc{;l;AACFYr   z
from setuptools.modified import newer
from {imported_module}.errors import DistutilsError

# Can't use pytest.raises in this context
try:
    newer("", "")
except DistutilsError:
    print("success")
else:
    raise AssertionError("Expected to raise")
)r4   r>   zsetuptools._distutilsc                     t        |       }ddt        j                  |      g} |j                  |fdt	        |      it
        j                         }|dk(  sJ y )Nr*   r   r   rK   r   rL   )r-   (ENSURE_CONSISTENT_ERROR_FROM_MODIFIED_PYr   r   r   r   rN   )rD   rE   r   r   r   rP   s         r   &test_consistent_error_from_modified_pyrW      si     (9
:C077+ 	8 	
C TXXc;vc{;l;AACFYr   )r>   N)N)r   r	   sysr!   pytestbuiltin_module_namesr8   r   r   r   r$   markskipifversion_infoskip_without_stdlib_distutilsr2   r7   xfailr:   r<   rB   rM   usefixturesparametrizeparamrQ   rS   rT   rV   rW   r   r   r   <module>rc      s   	  
  
00
0'2	D	? !' 2 2: !3 !  / // 9%HI/ J/"3% !* &,Xz1NOX{2OPX~5RS!

 '' # &X%BC ', ( &, 	-5R	
	


 '
r   