o
    LK&h@                     @   sb   d 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ZG dd de
jZdS )	z*Tests for distutils.command.build_scripts.    N)	sysconfig)build_scripts)Distribution)supportc                   @   s8   e Zd Zdd Zdd Zdd Zedd Zd	d
 ZdS )TestBuildScriptsc                 C   sH   |  dg }|jrJ |jd u sJ |  |jsJ |jdks"J d S )Nz/foo/bar)get_build_scripts_cmdforce	build_dirfinalize_options)selfcmd r   a/var/www/html/venv/lib/python3.10/site-packages/setuptools/_distutils/tests/test_build_scripts.pytest_default_settings   s   

z&TestBuildScripts.test_default_settingsc                    sh   |    |   }|  }| | fdd|D }|  |  t|}|D ]}||v s1J q)d S )Nc                       g | ]	}t j |qS r   ospathjoin.0fnsourcer   r   
<listcomp>       z/TestBuildScripts.test_build.<locals>.<listcomp>)mkdtempwrite_sample_scriptsr   r
   runr   listdir)r   targetexpectedr   builtnamer   r   r   
test_build   s   

zTestBuildScripts.test_buildc                 C   s4   dd l }t }||_tj|d|jd|jd< t|S )Nr   T)r   r   
executablebuild)sysr   scriptsr   DummyCommandr%   command_objr   )r   r    r(   r'   distr   r   r   r   '   s   z&TestBuildScripts.get_build_scripts_cmdc                 C   s@   t d t d t d d}tj||  t|S )Nz
                #! /usr/bin/env python2.3
                # bogus script w/ Python sh-bang
                pass
                zy
                #!/usr/bin/python
                # bogus script w/ Python sh-bang
                pass
                zr
                #!/bin/sh
                # bogus shell script w/ sh-bang
                exit 0
                )z
script1.pyz
script2.pyzshell.sh)textwrapdedentlstripjaracor   r&   list)dirspecr   r   r   r   1   s   z%TestBuildScripts.write_sample_scriptsc              	      s   |    |   }|  }| | fdd|D }|  t d}dtjd< z|  W |d ur9|tjd< n
|d urC|tjd< w t	
|}|D ]}||v sSJ qKd S )Nc                    r   r   r   r   r   r   r   r   M   r   z5TestBuildScripts.test_version_int.<locals>.<listcomp>VERSION   )r   r   r   r
   r   get_config_varsget_config_varsr   r   r   )r   r    r!   r   oldr"   r#   r   r   r   test_version_intG   s(   




z!TestBuildScripts.test_version_intN)	__name__
__module____qualname__r   r$   r   staticmethodr   r9   r   r   r   r   r      s    


r   )__doc__r   r,   	distutilsr   distutils.command.build_scriptsr   distutils.corer   distutils.testsr   jaraco.pathr/   TempdirManagerr   r   r   r   r   <module>   s    