+
    SBi                     p   ^ RI t ^ RIt^ RIt^ RIt^ RIHt ^ RIHtHt ^ RI	t	^ RI
Ht ^ RIHtHtHt ^ RIHtHt ^ RIHt ^RIHt ^ R	IHtHt  ! R
 R]],          4      tRR ltRR lt]P:                  RR l4       tR t ! R R4      t  ! R R4      t! ! R R4      t"]PF                  t$ ! R R4      t%R# )    N)Path)Mockpatch)InvalidRequirement)ConfigHandlerTargetread_configuration)Distribution_Distribution)SetuptoolsDeprecationWarning)DALS)DistutilsFileErrorDistutilsOptionErrorc                       ] tR t^tRtRtRtR# )ErrConfigHandlerz7Erroneous handler. Fails to implement required methods.z**err** N)__name__
__module____qualname____firstlineno____doc__section_prefix__static_attributes__r       J/usr/lib/python3.14/site-packages/setuptools/tests/config/test_setupcfg.pyr   r      s
    ANr   r   c                     TpV P                  R 4       F  pVP                  V4      pK  	  RpV'       g#   VP                  R4      pVP                  R4       W53# )/N__init__.py )splitmkdirjoinwrite)namebase_dirnsdir_packagedir_name	init_files   &&&   r   make_package_dirr*      sV    KJJsO!''1 $I$$]3	!!r   c                     Vf   RpV P                  R4      P                  V4       V P                  R4      pVP                  VP                  V4      RR7       \        W@4      w  rgVP                  R4       We3# )Nz%from setuptools import setup
setup()
setup.py	setup.cfgwb)modezWVERSION = (1, 2, 3)

VERSION_MAJOR = 1
def get_version():
    return [3, 4, 5, "dev"]

)r"   r#   encoder*   )tmpdir	setup_cfgsetup_pyencodingpackage_pathconfigpackage_dirr)   s   &&&&&   r   fake_envr8   %   sx     <
KK
!!(+[[%F
LL!!(+$L7-lCKOO	 r   c              #      "   T;'       g    / pV P                  4       ;_uu_ 4        \        V4      pR Vn        T;'       d    VP                  4        Vx  RRR4       R#   + '       g   i     R# ; i5i)r,   N)as_cwdr
   script_nameparse_config_files)r1   kwargs_initialparsedists   &&& r   get_distr@   >   sT     #))rN	N+%++$))+
 
s   %A61A"
A6"A3	-	A6c            	          \         P                  ! \        4      ;_uu_ 4        \        R / R\	        4       4      p V P
                   R R R 4       R #   + '       g   i     R # ; i)NF)pytestraisesNotImplementedErrorr   r   parsers)handlers    r   test_parsers_implementedrG   J   s:    	*	+	+"4UDF; 
,	+	+	+s   #AA!	c                   2   a  ] tR t^Pt o R tR tR tRtV tR# )TestConfigurationReaderc                    \        VR 4      w  r#\        \        V4      4      pVR,          R,          R8X  g   Q hVR,          R,          RR.8X  g   Q hVR,          R,          R	R
.8X  g   Q hR# )zX[metadata]
version = 10.1.1
keywords = one, two

[options]
scripts = bin/a.py, bin/b.py
metadataversion10.1.1keywordsonetwooptionsscriptszbin/a.pyzbin/b.pyN)r8   r	   strselfr1   _r6   config_dicts   &&   r   
test_basic"TestConfigurationReader.test_basicQ   sw    -
	 )V5:&y1X===:&z2uenDDD9%i0Z4LLLLr   c           	         \         P                  ! \        4      ;_uu_ 4        \        \	        VP                  R 4      4      4       RRR4       R#   + '       g   i     R# ; i)r-   N)rB   rC   r   r	   rS   r"   rU   r1   s   &&r   test_no_config&TestConfigurationReader.test_no_config`   s7    ]]-..s6;;{#;<= /...s   $AA"	c                d   \        VR 4      w  r#\        P                  ! \        4      ;_uu_ 4        \	        \        V4      4       RRR4       \	        \        V4      RR7      pVR,          R,          RR.8X  g   Q hRVR,          9  g   Q hVP                  4        R#   + '       g   i     La; i)	z<[metadata]
version = attr: none.VERSION
keywords = one, two
NT)ignore_option_errorsrK   rN   rO   rP   rL   )r8   rB   rC   ImportErrorr	   rS   removerT   s   &&   r   test_ignore_errors*TestConfigurationReader.test_ignore_errorsd   s    M
	 ]];''s6{+ ( )V4P:&z2uenDDDJ 7777 ('s   BB/	r   N)	r   r   r   r   rX   r\   rb   r   __classdictcell____classdict__s   @r   rI   rI   P   s     M> r   rI   c                     a  ] tR t^tt o R tR tR tR tR tR t	R t
R tR	 tR
 tR tR tR tR tR tR tR tR tR tR t]P2                  P5                  R R]! R4      RR/3R]! R4      RR/3.4      R 4       tRtV tR# )!TestMetadatac                d   \        VR 4       VP                  R4      P                  R4       RR/p\        W4      ;_uu_ 4       pVP                  pVP
                  R8X  g   Q hVP                  R8X  g   Q hVP                  R8X  g   Q hVP                  R8X  g   Q hVP                  RR	.8X  g   Q hVP                  R8X  g   Q hVP                  R
8X  g   Q hVP                  RR.8X  g   Q hVP                  R8X  g   Q hVP                  R8X  g   Q h RRR4       R#   + '       g   i     R# ; i)a-  [metadata]
version = 10.1.1
description = Some description
long_description_content_type = text/something
long_description = file: README
name = fake_name
keywords = one, two
provides = package, package.sub
license = otherlic
download_url = http://test.test.com/test/
maintainer_email = test@test.com
READMEreadme contents
line2licensezBSD 3-Clause LicenserM   zSome descriptiontext/somethingpackagezpackage.sub	fake_namerO   rP   http://test.test.com/test/test@test.comN)r8   r"   r#   r@   rK   rL   descriptionlong_description_content_typelong_descriptionprovidesrl   r$   rN   download_urlmaintainer_email)rU   r1   meta_initialr?   rK   s   &&   r   rX   TestMetadata.test_basicu   s6   
1	
 	H##$<= -

 f++t}}H##x///''+====99=MMMM,,0HHHH$$M(BBBB##'======K///$$666((,HHHH,,??? ,+++s   CDD/	c                   \        V\        R 4      4       \        V4      ;_uu_ 4       pVP                  pVP                  R8X  g   Q hVP
                  R8X  g   Q hVP                  R8X  g   Q h RRR4       R#   + '       g   i     R# ; i)zr
            [metadata]
            name=foo
            version=0.0.1
            license=Apache 2.0
            fooz0.0.1z
Apache 2.0N)r8   r   r@   rK   r$   rL   rl   rU   r1   r?   rK   s   &&  r   test_license_cfgTestMetadata.test_license_cfg   s{    
	
 f}}H==E)))##w...##|333 s   AA::B	c                :   \        VR 4       VP                  R4      P                  R4       VP                  R4      P                  R4       \        V4      ;_uu_ 4       pVP                  P
                  R8X  g   Q h RRR4       R#   + '       g   i     R# ; i)z=[metadata]
long_description = file: README.rst, CHANGES.rst

z
README.rstrk   zCHANGES.rstzchangelog contents
and stuffz2readme contents
line2
changelog contents
and stuffN)r8   r"   r#   r@   rK   rt   rU   r1   r?   s   && r   test_file_mixedTestMetadata.test_file_mixed   s}    N	

 	L!''(@AM"(()HIf==11G   s    B		B	c           	        VP                  R 4       VP                  RR4      pVP                  RR7       \        VR4       \        VRR7      ;_uu_ 4       p\        P
                  ! \        4      ;_uu_ 4        VP                  4        RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)	rj   depth1depth2T)dirz1[metadata]
long_description = file: ../../README
Fr>   N)ensurer"   r8   r@   rB   rC   r   r<   )rU   r1   projectr?   s   &&  r   test_file_sandboxed TestMetadata.test_file_sandboxed   s    h++h14 OPgU++t344'') 5 ,+44 ,++s$   #B0:B	B0B-(B00C	c                ^   \        VR 4       \        V4      ;_uu_ 4       pVP                  pVP                  R8X  g   Q hVP                  R8X  g   Q hVP
                  R8X  g   Q hVP                  RR.8X  g   Q hVP                  RR.8X  g   Q h RRR4       R#   + '       g   i     R# ; i)	z[metadata]
author_email = test@test.com
home_page = http://test.test.com/test/
summary = Short summary
platform = a, b
classifier =
  Framework :: Django
  Programming Language :: Python :: 3.5
rq   rp   zShort summaryabFramework :: Django%Programming Language :: Python :: 3.5N)r8   r@   rK   author_emailurlrr   	platformsclassifiersr|   s   &&  r   test_aliasesTestMetadata.test_aliases   s    8
	
 f}}H((O;;;<<#????''?:::%%#s333''%7,    s   A0BB,	c                    \        VR 4       \        V4      ;_uu_ 4       pVP                  pVP                  RR.8X  g   Q hVP                  RR.8X  g   Q h RRR4       R#   + '       g   i     R# ; i)z[metadata]
name = fake_name
keywords =
  one
  two
classifiers =
  Framework :: Django
  Programming Language :: Python :: 3.5
rO   rP   r   r   N)r8   r@   rK   rN   r   r|   s   &&  r   test_multilineTestMetadata.test_multiline   st    8
	
 f}}H$$666''%7,    s   7A""A3	c                    \        VR 4       \        V4      ;_uu_ 4       pVP                  pVP                  RRRR/8X  g   Q h RRR4       R#   + '       g   i     R# ; i)zf[metadata]
project_urls =
  Link One = https://example.com/one/
  Link Two = https://example.com/two/
Link Onehttps://example.com/one/Link Twohttps://example.com/two/N)r8   r@   rK   project_urlsr|   s   &&  r   	test_dictTestMetadata.test_dict   sb    6	
 f}}H((66-    s   $AA 	c                   \        VR 4      w  r#VP                  R4      pVP                  R4      P                  R4       VP                  R4      P                  R4       VP                  R4      pVP                  R4      P                  R4       VP                  R4      P                  R4       \	        V4      ;_uu_ 4       pVP
                  P                  R8X  g   Q h R	R	R	4       VP                  R
4       \	        V4      ;_uu_ 4       pVP
                  P                  R8X  g   Q h R	R	R	4       VP                  R4       \	        V4      ;_uu_ 4       pVP
                  P                  R8X  g   Q h R	R	R	4       VP                  R4       \	        V4      ;_uu_ 4       pVP
                  P                  R8X  g   Q h R	R	R	4       VP                  R4       \	        V4      ;_uu_ 4       pVP
                  P                  R8X  g   Q h R	R	R	4       R	#   + '       g   i     EL?; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R	# ; i)z0[metadata]
version = attr: fake_package.VERSION
subpkg_ar   r   zmod.pyzVERSION = (2016, 11, 26)subpkg_bz2import third_party_module
VERSION = (2016, 11, 26)1.2.3Nz4[metadata]
version = attr: fake_package.get_version
z	3.4.5.devz6[metadata]
version = attr: fake_package.VERSION_MAJOR
1z=[metadata]
version = attr: fake_package.subpkg_a.mod.VERSION
z
2016.11.26z=[metadata]
version = attr: fake_package.subpkg_b.mod.VERSION
)r8   r!   r"   r#   r@   rK   rL   )rU   r1   r7   r6   sub_asub_br?   s   &&     r   test_versionTestMetadata.test_version  s   &H
 !!*-

=!''+

8""#=>!!*-

=!''+

8""A	
 f==((G333  	MNf==((K777  	OPf==((C///  	VWf==((L888  	VWf==((L888 !     s<   HH-I%I0I'H*	-H>	I	I$	'I8	c           	     D   \        VR 4       VP                  RR4      P                  R4       \        V4      ;_uu_ 4       pVP                  P
                  R8X  g   Q h RRR4       VP                  RR4      P                  R4       \        P                  ! \        4      ;_uu_ 4        \        V4      ;_uu_ 4       pVP                  P
                   RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     L-; i  + '       g   i     R# ; i)z4[metadata]
version = file: fake_package/version.txt
fake_packagezversion.txtz1.2.3
r   Nz1.2.3
4.5.6
)	r8   r"   r#   r@   rK   rL   rB   rC   r   r   s   && r   test_version_fileTestMetadata.test_version_file#  s    QRNM288Cf==((G333  	NM2889IJ]]/00&!!T%% " 10	 
 "! 100s0   C(+D?C;	D(C8	;DDD	c                    \        VR RR7       \        V4      ;_uu_ 4       pVP                  P                  R8X  g   Q h RRR4       R#   + '       g   i     R# ; i)zY[metadata]
version = attr: fake_package_simple.VERSION
[options]
package_dir =
    = src
zsrc/fake_package_simpler5   r   Nr8   r@   rK   rL   r   s   && r   $test_version_with_package_dir_simple1TestMetadata.test_version_with_package_dir_simple/  sM    
 3	
 f==((G333    AA	c                    \        VR RR7       \        V4      ;_uu_ 4       pVP                  P                  R8X  g   Q h RRR4       R#   + '       g   i     R# ; i)zr[metadata]
version = attr: fake_package_rename.VERSION
[options]
package_dir =
    fake_package_rename = fake_dir
fake_dirr   r   Nr   r   s   && r   $test_version_with_package_dir_rename1TestMetadata.test_version_with_package_dir_rename=  sM    3
 $	
 f==((G333 r   c                    \        VR RR7       \        V4      ;_uu_ 4       pVP                  P                  R8X  g   Q h RRR4       R#   + '       g   i     R# ; i)zx[metadata]
version = attr: fake_package_complex.VERSION
[options]
package_dir =
    fake_package_complex = src/fake_dir
zsrc/fake_dirr   r   Nr   r   s   && r   %test_version_with_package_dir_complex2TestMetadata.test_version_with_package_dir_complexK  sM    8
 (	
 f==((G333 r   c                    \        VR 4       \        VRR7      ;_uu_ 4       pVP                  4        RRR4       R#   + '       g   i     R# ; i)z+[metadata]
name = fake_name
unknown = some
Fr   N)r8   r@   r<   r   s   && r   test_unknown_meta_item#TestMetadata.test_unknown_meta_itemY  s7    IJfE**d##% +***s	   =A	c           	        \        VR 4       \        VRR7      ;_uu_ 4       p\        P                  ! \        4      ;_uu_ 4        VP                  4        RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)z[metadata.some]
key = val
Fr   Nr8   r@   rB   rC   r   r<   r   s   && r   test_usupported_section$TestMetadata.test_usupported_section^  sX    78fE**d344'') 5 +*44 +**#   #A;A(	A;(A83A;;B	c                   \        . RO4      p\        VR4      w  r4VP                  R4      P                  R4       \	        V4      ;_uu_ 4       p\        VP
                  P                  4      V8X  g   Q h RRR4       VP                  R4       \	        V4      ;_uu_ 4       p\        VP
                  P                  4      V8X  g   Q h RRR4       R#   + '       g   i     Lf; i  + '       g   i     R# ; i)r   z+[metadata]
classifiers = file: classifiers
r   z^Framework :: Django
Programming Language :: Python :: 3
Programming Language :: Python :: 3.5
Nz[metadata]
classifiers =
    Framework :: Django
    Programming Language :: Python :: 3
    Programming Language :: Python :: 3.5
)r   z#Programming Language :: Python :: 3r   )setr8   r"   r#   r@   rK   r   )rU   r1   expectedrV   r6   r?   s   &&    r   test_classifiersTestMetadata.test_classifiersd  s     
  V%TU	M"((6	
 ft}}001X===  	:	
 ft}}001X===   s   'C#'C(C%	(C9	c           	        \        VR 4       \        P                  ! \        P                  4      ;_uu_ 4        \        V4      ;_uu_ 4         RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)z%[metadata]
description = %(message)s
N)r8   rB   rC   configparserInterpolationMissingOptionErrorr@   r[   s   &&r   test_interpolationTestMetadata.test_interpolation  sR    BC]]<GGHH&!! " IH!! IHHs#   A4A!	A4!A1,A44B	c                    \        VR RR7       \        V4      ;_uu_ 4         RRR4       R#   + '       g   i     R# ; i)u$   [metadata]
description = éàïôñ
utf-8r4   Nr8   r@   r[   s   &&r   test_non_ascii_1TestMetadata.test_non_ascii_1  s,    AGTf s   .?	c                    \        VR 4       \        V4      ;_uu_ 4         RRR4       R#   + '       g   i     R# ; i)z
# -*- coding: invalid
Nr   r[   s   &&r   test_non_ascii_3TestMetadata.test_non_ascii_3  s*    45f s   ,=	c                    \        VR RR7       \        V4      ;_uu_ 4       pVP                  P                  R8X  g   Q h RRR4       R#   + '       g   i     R# ; i)u8   # -*- coding: utf-8
[metadata]
description = éàïôñ
r   r   u
   éàïôñN)r8   r@   rK   rr   r   s   && r   test_non_ascii_4TestMetadata.test_non_ascii_4  sI    I	

 f==,,<<< r   c           	         \        VRRR7       \        P                  ! \        4      ;_uu_ 4        \	        V4      ;_uu_ 4         RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)z-
Config files encoded not in UTF-8 will fail
uJ   # vim: set fileencoding=iso-8859-15 :
[metadata]
description = éàïôñ
ziso-8859-15r   N)r8   rB   rC   UnicodeDecodeErrorr@   r[   s   &&r   test_not_utf8TestMetadata.test_not_utf8  sU     	["	

 ]]-..&!! " /.!! /..s#   A,A	A,A)$A,,A=	zCInvalid dash-separated key 'author-email' in 'metadata' (setup.cfg)z
                    [metadata]
                    author-email = test@test.com
                    maintainer_email = foo@foo.com
                    zauthor-emailrq   z6Invalid uppercase key 'Name' in 'metadata' (setup.cfg)z
                    [metadata]
                    Name = foo
                    description = Some description
                    Namer{   c                   \        W4       \        P                  ! \        \        P
                  ! V4      R 7      ;_uu_ 4        \        V4      P                  4       pRRR4       VP                  R4      P                  4        VP                  4        FB  w  rgVP                  RR4      P                  4       p\        XP                  V4      V8X  d   KB  Q h	  R#   + '       g   i     L; i)matchNr-   -rV   )r8   rB   warnsr   reescaper@   	__enter__r"   ra   itemsreplacelowergetattrrK   )	rU   r1   	error_msgr6   invalidr?   fieldvalueattrs	   &&&&&    r   *test_invalid_options_previously_deprecated7TestMetadata.test_invalid_options_previously_deprecated  s    B 	 \\6bii	>RSSF#--/D T 	K '')#MMOLE==c*002D4==$/5888 , TSs   CC-	r   N)r   r6   r   )r   r   r   r   rX   r}   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rB   markparametrizer   r   r   rd   re   s   @r   rh   rh   t   s     #@J4(*0( 9D
&444&
*><

= [[* V  1
 I 
	
69769r   rh   c                     a  ] tR tRt o R tR tR tR tR tR t	R t
R	 t]P                  P                  R
. RO4      R 4       t]P                  P                  R
. RO4      R 4       t]P                  P                  R
. RO4      ]P                  P#                  R4      R 4       4       tR tR tR tR tR tR tR tR tR tR tRtV tR# )TestOptionsi  c           	        \        VR 4       \        P                  ! \        RR7      pT;_uu_ 4        \	        V4      ;_uu_ 4       pVP
                  '       g   Q hVP                  '       g   Q hVP                  RRRR/8X  g   Q hVP                  RR.8X  g   Q hVP                  R	R
.8X  g   Q hVP                  RR.8X  g   Q hVP                  RR.8X  g   Q hVP                  . RO8X  g   Q hVP                  . RO8X  g   Q hVP                  R8X  g   Q hVP                  RR.8X  g   Q h RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)a  [options]
zip_safe = True
include_package_data = yes
package_dir = b=c, =src
packages = pack_a, pack_b.subpack
namespace_packages = pack1, pack2
scripts = bin/one.py, bin/two.py
eager_resources = bin/one.py, bin/two.py
install_requires = docutils>=0.3; pack ==1.1, ==1.3; hey
setup_requires = docutils>=0.3; spack ==1.1, ==1.3; there
dependency_links = http://some.com/here/1, http://some.com/there/2
python_requires = >=1.0, !=2.8
py_modules = module1, module2
namespace_packagesr   r   srcr   cpack_apack_b.subpackpack1pack2
bin/one.py
bin/two.pyhttp://some.com/here/1http://some.com/there/2z>=1.0, !=2.8module1module2Ndocutils>=0.3pack==1.1,==1.3heyr  zspack ==1.1, ==1.3there)r8   rB   r   r   r@   zip_safeinclude_package_datar7   packagesr   rR   dependency_linksinstall_requiressetup_requirespython_requires
py_modulesrU   r1   deprecr?   s   &&  r   rX   TestOptions.test_basic  sa   .	
" :BVWVXf%%=== =,,,,,##E3'<<<<==X/?$@@@@**w.@@@@<<L,#????((().    (( .   
 && ,   
 ''>999??y)&<<<<- &VV%%VVVs*   E&E 	.B?E 	.E EEE$	c           	     .   \        VR 4       \        P                  ! \        RR7      pT;_uu_ 4        \	        V4      ;_uu_ 4       pVP
                  RRRR/8X  g   Q hVP                  RR.8X  g   Q hVP                  R	R
.8X  g   Q hVP                  RR.8X  g   Q hVP                  RR.8X  g   Q hVP                  . RO8X  g   Q hVP                  . RO8X  g   Q h RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)a  [options]
package_dir = 
  b=c
  =src
packages = 
  pack_a
  pack_b.subpack
namespace_packages = 
  pack1
  pack2
scripts = 
  bin/one.py
  bin/two.py
eager_resources = 
  bin/one.py
  bin/two.py
install_requires = 
  docutils>=0.3
  pack ==1.1, ==1.3
  hey
setup_requires = 
  docutils>=0.3
  spack ==1.1, ==1.3
  there
dependency_links = 
  http://some.com/here/1
  http://some.com/there/2
r   r   r   r   r   r   r   r   r   r   r   r   r   r  Nr  r  )r8   rB   r   r   r@   r7   r  r   rR   r  r  r  r  s   &&  r   r   TestOptions.test_multiline   s   *	
< :BVWVXf%%##E3'<<<<==X/?$@@@@**w.@@@@<<L,#????((().    (( .   
 && ,    &VV%%VVVs$   DBC0	D0D ;DD	c           	        \        VR 4       \        VRR7      ;_uu_ 4       p\        P                  ! \        4      ;_uu_ 4        VP                  4        RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)z[options]
package_dir = a b
Fr   Nr   r   s   && r   test_package_dir_fail!TestOptions.test_package_dir_fail4  sX    9:fE**d344'') 5 +*44 +**r   c                    \        VR 4       \        V4      ;_uu_ 4       pVP                  RRR.RR./8X  g   Q hVP                  RRR.RR./8X  g   Q h R	R	R	4       R	#   + '       g   i     R	# ; i)
z}[options.package_data]
* = *.txt, *.rst
hello = *.msg

[options.exclude_package_data]
* = fake1.txt, fake2.txt
hello = *.dat
r   z*.txtz*.rsthelloz*.msgz	fake1.txtz	fake2.txtz*.datN)r8   r@   package_dataexclude_package_datar   s   && r   test_package_dataTestOptions.test_package_data:  s    		
 f$$Wg&')    ,,[+.'1    s   5A  A1	c                    \        VR 4       \        V4      ;_uu_ 4       pVP                  R.8X  g   Q h RRR4       R#   + '       g   i     R# ; i)[options]
packages = find:
r   N)r8   r@   r  r   s   && r   test_packagesTestOptions.test_packagesP  s>    89f==^$4444 s   A  A	c                |   \        VR 4      w  r#\        RV4       \        RV4       \        V4      ;_uu_ 4       p\        VP                  4      \        . R	O4      8X  g   Q h RRR4       VP                  R4       \        V4      ;_uu_ 4       pVP                  R.8X  g   Q h RRR4       VP                  R4       \        V4      ;_uu_ 4       p\        VP                  4      \        RR.4      8X  g   Q h RRR4       R#   + '       g   i     L; i  + '       g   i     Lz; i  + '       g   i     R# ; i)
r!  sub_onesub_twor   fake_package.sub_twofake_package.sub_oneNzi[options]
packages = find:

[options.packages.find]
where = .
include =
    fake_package.sub_one
    two
zW[options]
packages = find:

[options.packages.find]
exclude =
    fake_package.sub_one
)r   r'  r(  r8   r*   r@   r   r  r#   rU   r1   r'   r6   r?   s   &&   r   test_find_directiveTestOptions.test_find_directiveV  s   &v/NOK0K0ft}}% . *     			
 f==%;$<<<<  	)	
 ft}}%n>T-U)VVVV 9 "  s#   (DD(D*D	D'	*D;	c                \   \        VR 4      w  r#\        RV4       \        RVRR7       \        V4      ;_uu_ 4       p\        VP                  4      0 Rm8X  g   Q h RRR4       VP                  R	4       \        V4      ;_uu_ 4       pVP                  R.8X  g   Q h RRR4       VP                  R
4       \        V4      ;_uu_ 4       p\        VP                  4      RR08X  g   Q h RRR4       R#   + '       g   i     L; i  + '       g   i     Lq; i  + '       g   i     R# ; i)z%[options]
packages = find_namespace:
r%  r&  T)r&   r   r'  r(  Nzs[options]
packages = find_namespace:

[options.packages.find]
where = .
include =
    fake_package.sub_one
    two
za[options]
packages = find_namespace:

[options.packages.find]
exclude =
    fake_package.sub_one
>   r   r(  r'  r)  r*  s   &&   r   test_find_namespace_directive)TestOptions.test_find_namespace_directive{  s   &=
 	K0KD9ft}}% *     			
 f==%;$<<<<  	)	
 ft}}%.:P)QQQQ 9 "  s#   C4D
D4D	D	D+	c                   \        VR 4       \        V4      ;_uu_ 4       pVP                  RRR.RRR./8X  g   Q h\        VP                  P
                  4      RR08X  g   Q h RRR4       R#   + '       g   i     R# ; i)z_[options.extras_require]
pdf = ReportLab>=1.2; RXP
rest = 
  docutils>=0.3
  pack ==1.1, ==1.3
pdfzReportLab>=1.2RXPrestr  r  N)r8   r@   extras_requirer   rK   provides_extrasr   s   && r   test_extras_requireTestOptions.test_extras_require  s    $	
 f&&(%0*;<+    t}}445%HHH s   AA//B 	r6   c           	        \        W!4       R p\        P                  ! \        VR7      ;_uu_ 4        \	        V4      ;_uu_ 4       p RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; izoOne of the parsed requirements in `(install_requires|extras_require.+)` looks like a valid environment marker.*r   N)r8   rB   rC   r   r@   rU   r6   r1   r   rV   s   &&&  r   +test_raises_accidental_env_marker_misconfig7TestOptions.test_raises_accidental_env_marker_misconfig  sZ     	 6 	 ]]-U;;&!!Q " <;!! <;;#   A-A	A-A*%A--A>	c           	        \        W!4       R p\        P                  ! \        VR7      ;_uu_ 4        \	        V4      ;_uu_ 4       p RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; ir9  )r8   rB   r   r   r@   r:  s   &&&  r   )test_warn_accidental_env_marker_misconfig5TestOptions.test_warn_accidental_env_marker_misconfig  s\     	 6 	 \\6eDD&!!Q " ED!! EDDr=  z.error::setuptools.SetuptoolsDeprecationWarningc                    \        W!4       \        V4      p\        V4      ;_uu_ 4       p R R R 4       \        V4      V8X  g   Q hR #   + '       g   i     L$; i)N)r8   lenr@   )rU   r6   r1   recwarnnum_warningsrV   s   &&&&  r   +test_nowarn_accidental_env_marker_misconfig7TestOptions.test_nowarn_accidental_env_marker_misconfig  sG    " 	 7|f  7||+++ s   AA	c                    \        VR 4       \        V4      ;_uu_ 4       pVP                  RR.RR./8X  g   Q h RRR4       R#   + '       g   i     R# ; i)z2[options.extras_require]
foo-a = foo
foo_b = test
zfoo-ar{   foo_btestN)r8   r@   r4  r   s   && r   "test_dash_preserved_extras_require.TestOptions.test_dash_preserved_extras_require  sJ    PQf&&7UGWvh*OOOO s   AA	c                   \        VR 4      w  r#\        V4      ;_uu_ 4       pVP                  RRR.RR./8X  g   Q h RRR4       RpVP                  R4      P	                  V4       VP	                  R	4       \        V4      ;_uu_ 4       pVP                  V8X  g   Q h RRR4       R#   + '       g   i     Lu; i  + '       g   i     R# ; i)
z[options.entry_points]
group1 = point1 = pack.module:func, .point2 = pack.module2:func_rest [rest]
group2 = point3 = pack.module:func2
group1point1 = pack.module:func'.point2 = pack.module2:func_rest [rest]group2point3 = pack.module:func2NzN[blogtool.parsers]
.rst = some.nested.module:SomeClass.some_classmethod[reST]
entry_pointsz,[options]
entry_points = file: entry_points
)r8   r@   rR  r"   r#   )rU   r1   rV   r6   r?   r   s   &&    r   test_entry_pointsTestOptions.test_entry_points  s    4
	 f$$/= 78)    K 	
 	N#))(3 	EFf$$000 ' & s   B+B>+B;	>C	c                    \        VR 4       \        V4      ;_uu_ 4       pVP                  RRR.RR./8X  g   Q h RRR4       R#   + '       g   i     R# ; i)z[options.entry_points]
GROUP1 = point1 = pack.module:func, .point2 = pack.module2:func_rest [rest]
group2 = point3 = pack.module:func2
GROUP1rN  rO  rP  rQ  N)r8   r@   rR  r   s   && r    test_case_sensitive_entry_points,TestOptions.test_case_sensitive_entry_points  sf    4	
 f$$/= 78)    s   AA	c                    \        VR 4       \        V4      ;_uu_ 4       pRRR.3RRR.3.p\        VP                  4      \        V4      8X  g   Q h RRR4       R#   + '       g   i     R# ; i)zQ[options.data_files]
cfg =
      a/b.conf
      c/d.conf
data = e/f.dat, g/h.dat
cfga/b.confc/d.confdataze/f.datzg/h.datN)r8   r@   sorted
data_filesrU   r1   r?   r   s   &&  r   test_data_filesTestOptions.test_data_files,  so    (	
 fZ01)Y/0H $//*fX.>>>> s   2AA.	c                6   \        VR 4       VP                  R4      P                  R4       VP                  R4      P                  R4       VP                  R4      P                  R4       VP                  R4      P                  R4       VP                  R4      P                  R4       VP                  R4      P                  R4       VP                  R4      P                  R4       VP                  R	4      P                  R4       VP                  R
4      P                  R4       \        V4      ;_uu_ 4       pRRR.3R. RO3R. RO3R. RO3.p\	        VP
                  4      \	        V4      8X  g   Q h RRR4       R#   + '       g   i     R# ; i)z[options.data_files]
cfg =
      a/b.conf
      c/d.conf
data = *.dat
icons = 
      *.ico
audio = 
      *.wav
      sounds.db
a.datr   b.datc.data.icob.icoc.icobeep.wavboop.wav	sounds.dbrZ  r[  r\  r]  iconsaudioN)rd  re  rf  )rg  rh  ri  )rj  rk  rl  )r8   r"   r#   r@   r^  r_  r`  s   &&  r   test_data_files_globby"TestOptions.test_data_files_globby=  sL   	 	
 	G""2&G""2&G""2&G""2&G""2&G""2&J%%b)J%%b)K &&r*fZ014556?@	H $//*fX.>>>> s    <FF	c                    \        V\        R 4      4       \        V4      ;_uu_ 4       pVP                  4        RRR4       R#   + '       g   i     R# ; i)zE
            [options]
            python_requires=>=2.7
            Nr8   r   r@   r<   r   s   && r   test_python_requires_simple'TestOptions.test_python_requires_simple`  D    	
 f##%    AA	c                    \        V\        R 4      4       \        V4      ;_uu_ 4       pVP                  4        RRR4       R#   + '       g   i     R# ; i)zM
            [options]
            python_requires=>=2.7,!=3.0.*
            Nrr  r   s   && r   test_python_requires_compound)TestOptions.test_python_requires_compoundm  ru  rv  c           	     ,   \        V\        R 4      4       \        P                  ! \        4      ;_uu_ 4        \        V4      ;_uu_ 4       pVP                  4        RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)zG
            [options]
            python_requires=invalid
            N)r8   r   rB   rC   	Exceptionr@   r<   r   s   && r   test_python_requires_invalid(TestOptions.test_python_requires_invalidz  sd    	
 ]]9%%&!!T'') " &%!! &%%s#   BA/	B/A?:BB	c                   \        VR 4      pVP                  P                  RRR7       VP                  RRR7       Rp\	        V\
        P                  ! V4      4       \        V4      ;_uu_ 4       pVP                  R,          pVP                  R8X  g   Q hVP                  R	8X  g   Q hVP                  \
        P                  ! V4      4      '       g   Q h R
R
R
4       R
#   + '       g   i     R
# ; i)zsrc/custom_build.pyT)parentsexist_okzBfrom distutils.core import Command
class CustomCmd(Command): pass
r   r   zi
            [options]
            cmdclass =
                customcmd = custom_build.CustomCmd
        	customcmd	CustomCmdcustom_buildN)r   parentr!   
write_textr8   inspectcleandocr@   cmdclassr   r   samefilegetfile)rU   r1   module_pathr2   r?   r  s   &&    r   test_cmdclassTestOptions.test_cmdclass  s    6#89   =R 	 	

	
 	)))45f}}[1H$$333&&.888''(ABBBB	 s   2A$C$C$$C5	c                f   \        V\        R 4      4       VP                  R4      P                  R4       VP                  R4      P                  R4       \	        V4      ;_uu_ 4       pVP
                  R.8X  g   Q hVP                  RR./8X  g   Q h RRR4       R#   + '       g   i     R# ; i)z
            [options]
            install_requires = file:requirements.txt
            [options.extras_require]
            colors = file:requirements-extra.txt
            zrequirements.txtz
docutils>=0.3

zrequirements-extra.txtcoloramar  colorsN)r8   r   r"   r#   r@   r  r4  r   s   && r   test_requirements_file"TestOptions.test_requirements_file  s    
	
 	&'--.CD,-33J?f((_,====&&8j\*BBBB s   )+BB0	r   N)z5[options.extras_require]
foo = bar;python_version<'3'z3[options.extras_require]
foo = bar;os_name=='linux'z6[options.extras_require]
foo = bar;python_version<'3'
z4[options.extras_require]
foo = bar;os_name=='linux'
z3[options]
install_requires = bar;python_version<'3'z1[options]
install_requires = bar;os_name=='linux'z4[options]
install_requires = bar;python_version<'3'
z2[options]
install_requires = bar;os_name=='linux'
)z3[options.extras_require]
foo = bar;python_version<3z4[options.extras_require]
foo = bar;python_version<3
z1[options]
install_requires = bar;python_version<3z2[options]
install_requires = bar;python_version<3
)
z9[options.extras_require]
foo =
    bar;python_version<'3'z4[options.extras_require]
foo = bar;baz
boo = xxx;yyyz:[options.extras_require]
foo =
    bar;python_version<'3'
z5[options.extras_require]
foo = bar;baz
boo = xxx;yyy
z<[options.extras_require]
foo =
    bar
    python_version<3
z7[options]
install_requires =
    bar;python_version<'3'z2[options]
install_requires = bar;baz
boo = xxx;yyyz8[options]
install_requires =
    bar;python_version<'3'
z3[options]
install_requires = bar;baz
boo = xxx;yyy
z:[options]
install_requires =
    bar
    python_version<3
)r   r   r   r   rX   r   r  r  r"  r+  r.  r6  rB   r   r   r;  r?  filterwarningsrE  rJ  rS  rW  ra  ro  rs  rx  r|  r  r  r   rd   re   s   @r   r   r     s    )=V2h*,5#WJ%RNI" [[		
 [[	
 [[	
 [[ PQ, R ,P1>$?"!?F&&*C*C Cr   r   c                   \   a  ] tR tRt o R t]P                  ! ]RRR7      R 4       tRt	V t
R# )	TestExternalSettersi  c                h    \        W4       R VP                  n        RRRR/VP                  n        R# )rm   r   r   r   r   N)saved_dist_initrK   rs   r   )rU   r?   attrss   &&&r   _fake_distribution_init+TestExternalSetters._fake_distribution_init  s2    $6F3 22&
"r   __init__T)autospecc                    V P                   Vn        \        R RR//R7      pVP                  P                  R8X  g   Q hVP                  P
                  RRRR/8X  g   Q hR	# )
r   will_beignored)r  rm   r   r   r   r   N)r  side_effectr
   rK   rs   r   )rU   mock_parent_initr1   r?   s   &&& r   test_external_setters)TestExternalSetters.test_external_setters  sk    '+'C'C$>Iy3I"JK}}::>NNNN}}))22.
 
 	
 
r   r   N)r   r   r   r   r  r   objectr   r  r   rd   re   s   @r   r  r    s+     
 \\-d;	
 <	
r   r  )F)Nasciir   )NT)&r   
contextlibr  r   pathlibr   unittest.mockr   r   rB   packaging.requirementsr   setuptools.config.setupcfgr   r   r	   setuptools.distr
   r   setuptools.warningsr   textwrapr   distutils.errorsr   r   r   r*   r8   contextmanagerr@   rG   rI   rh   r   r  r  r  r   r   r   <module>r     s       	  %  5 P P 7 <  E}V, "2  ! !H]9 ]9@[C [C|  ((
 
r   