a  ze @sdZddlZddlZddlmZddlmZddlmZddl m Z ddl m Z Gdd d e j e jejZd d Zed kre edS) z*Tests for distutils.command.build_scripts.N) build_scripts) Distribution) sysconfig)support) run_unittestc@s<eZdZddZddZddZddZd d Zd d Zd S)BuildScriptsTestCasecCsJ|dg}||j||j|||j||jddS)Nz/foo/bar)get_build_scripts_cmdZ assertFalseforceZ assertIsNoneZ build_dirfinalize_optionsZ assertTrueZ assertEqual)selfcmdr V/opt/bitninja-python-dojo/embedded/lib/python3.9/distutils/tests/test_build_scripts.pytest_default_settingss     z*BuildScriptsTestCase.test_default_settingscsh||}|}||fdd|D}||t|}|D]}|||qRdS)Ncsg|]}tj|qSr ospathjoin.0fnsourcer r "sz3BuildScriptsTestCase.test_build..)mkdtempwrite_sample_scriptsrr runrlistdirassertIn)r targetexpectedr builtnamer rr test_builds   zBuildScriptsTestCase.test_buildcCs4ddl}t}||_tj|d|jd|jd<t|S)Nr)rr executableZbuild)sysrscriptsrZ DummyCommandr%Z command_objr)r rr'r&distr r rr+s z*BuildScriptsTestCase.get_build_scripts_cmdcCsPg}|d||dd|d||dd|d||dd|S)Nz script1.pyz@#! /usr/bin/env python2.3 # bogus script w/ Python sh-bang pass z script2.pyz8#!/usr/bin/python # bogus script w/ Python sh-bang pass zshell.shz1#!/bin/sh # bogus shell script w/ sh-bang exit 0 )append write_script)r dirr r r rr6s   z)BuildScriptsTestCase.write_sample_scriptscCs:ttj||d}z||W|n |0dS)Nw)openrrrwriteclose)r r+r"textfr r rr*Is z!BuildScriptsTestCase.write_scriptc s||}|}||fdd|D}|td}dtjd<z|W|dur|tjd<n|dur|tjd<0t |}|D]}| ||qdS)Ncsg|]}tj|qSr rrrr rrWsz9BuildScriptsTestCase.test_version_int..VERSION) rrrr rZget_config_varsgetZ _config_varsrrrr)r rr r oldr!r"r rrtest_version_intPs(       z%BuildScriptsTestCase.test_version_intN) __name__ __module__ __qualname__rr#rrr*r6r r r rrs   rcCs ttS)N)unittestZ makeSuiterr r r r test_suitelsr;__main__)__doc__rr:Zdistutils.command.build_scriptsrZdistutils.corerZ distutilsrZdistutils.testsrZ test.supportrZTempdirManagerZLoggingSilencerZTestCaserr;r7r r r rs     ^