a  ze @s2ddlZddlZddlZddlZddlZddlZddlZddlZejddZ ejddZ ejddZ ejdd Z Gd d d Z Gd d d e ZGddde ZGdddeeZGdddeZGdddeeZGdddeeZGdddZefddZGdddZddZGd d!d!ZdS)"Nc cs4t}zt|VWt|n t|0dSN)tempfilemkdtemppathlibPathshutilrmtree)Ztmpdirr P/opt/bitninja-python-dojo/embedded/lib/python3.9/test/test_importlib/fixtures.pytempdir sr c cs.t}zdVWt|n t|0dSr)osgetcwdchdir)Zorigr r r save_cwdsrc csdtJ}t$tt||VWdn1s80YWdn1sV0YdSr)r rr rstr)tmpr r r tempdir_as_cwdsrc cs6tj|zdVWtj|ntj|0dSr)sys meta_pathappendremove)finderr r r install_finder%s rc@seZdZddZdS)FixturescCst|_||jjdSr) contextlib ExitStackfixtures addCleanupcloseselfr r r setUp/s zFixtures.setUpN)__name__ __module__ __qualname__r!r r r r r.srcseZdZfddZZS)SiteDircs"tt||jt|_dSr)superr%r!r enter_contextr site_dirr __class__r r r!5sz SiteDir.setUpr"r#r$r! __classcell__r r r)r r%4sr%cs.eZdZeejddZfddZZS) OnSysPathc csFt|gtjdd<zdVWtjt|ntjt|0dS)Nr)rrpathr)dirr r r add_sys_path;szOnSysPath.add_sys_pathcs&tt||j||jdSr)r&r-r!rr'r0r(rr)r r r!DszOnSysPath.setUp) r"r#r$ staticmethodrcontextmanagerr0r!r,r r r)r r-:s r-cs.eZdZddddddZfddZZS) DistInfoPkgz Name: distinfo-pkg Author: Steven Ma Version: 1.0.0 Requires-Dist: wheel >= 1.0 Requires-Dist: pytest; extra == 'test' zmod.py,sha256=abc,20 zi [entries] main = mod:main ns:sub = mod:main )ZMETADATAZRECORDentry_points.txtJ def main(): print("hello world") )zdistinfo_pkg-1.0.0.dist-infomod.pycs tt|ttj|jdSr)r&r3r! build_filesfilesr(rr)r r r!`szDistInfoPkg.setUpr"r#r$r8r!r,r r r)r r3Isr3cseZdZfddZZS)DistInfoPkgOffPathcs tt|ttj|jdSr)r&r:r!r7r3r8r(rr)r r r!fszDistInfoPkgOffPath.setUpr+r r r)r r:esr:cs2eZdZddddddddZfd d ZZS) EggInfoPkga Name: egginfo-pkg Author: Steven Ma License: Unknown Version: 1.0.0 Classifier: Intended Audience :: Developers Classifier: Topic :: Software Development :: Libraries zW mod.py egginfo_pkg.egg-info/top_level.txt zG [entries] main = mod:main zq wheel >= 1.0; python_version >= "2.7" [test] pytest zmod )zPKG-INFOz SOURCES.txtr4z requires.txtz top_level.txtr5)zegginfo_pkg.egg-infor6cs"tt|ttj|jddSNprefix)r&r;r!r7r8r(rr)r r r!szEggInfoPkg.setUpr9r r r)r r;ksr;cs$eZdZddiZfddZZS) EggInfoFilezegginfo_file.egg-infoaa Metadata-Version: 1.0 Name: egginfo_file Version: 0.1 Summary: An example package Home-page: www.example.com Author: Eric Haffa-Vee Author-email: eric@example.coms License: UNKNOWN Description: UNKNOWN Platform: UNKNOWN cs"tt|ttj|jddSr<)r&r?r!r7r8r(rr)r r r!szEggInfoFile.setUpr9r r r)r r?sr?c@seZdZddiZddZdS) LocalPackagezsetup.pyzk import setuptools setuptools.setup(name="local-pkg", version="2.0.1") cCs4t|_||jj|jtt|jdSr) rrrrrr'rr7r8rr r r r!s zLocalPackage.setUpN)r"r#r$r8r!r r r r r@sr@c Cs|D]\}}||}t|tr8|t||dqt|trx|d}||Wdq1sl0Yq|d}|t|Wdq1s0YqdS)aBuild a set of files/directories, as described by the file_defs dictionary. Each key/value pair in the dictionary is interpreted as a filename/contents pair. If the contents value is a dictionary, a directory is created, and the dictionary interpreted as the files within it, recursively. For example: {"README.txt": "A README file", "foo": { "__init__.py": "", "bar": { "__init__.py": "", }, "baz.py": "# Some code", } } r=wbNw) items isinstancedictmkdirr7bytesopenwriteDALS)Z file_defsr>namecontentsZ full_namefr r r r7s   * r7c@seZdZddZddZdS) FileBuildercCs4z ddl}Wnty YdS0|jjp2|dS)Nru☃z'File system does not support non-ascii.)Z test.support ImportErrorsupportZ FS_NONASCIIskip)r testr r r unicode_filenames  zFileBuilder.unicode_filenamecCst|dSr)unittestZSkipTest)r reasonr r r rQszFileBuilder.skipN)r"r#r$rSrQr r r r rNs rNcCst|S)zDedent and left-strip)textwrapdedentlstrip)rr r r rJsrJc@seZdZddZdS) NullFindercCsdSrr )r rKr r r find_moduleszNullFinder.find_moduleN)r"r#r$rZr r r r rYsrY)r rrrrrVrrTr2r rrrrr%r-r3r:r;r?r@rr7rNrJrYr r r r s6    %"