+
    h                         R t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RI	H
t
 ^ RIHt ^RIHtHt RtRt]P$                  R 4       t]P$                  R	 4       t ! R
 R4      t ! R R4      t ! R R4      tR# )zdevelop testsN)paths_on_pythonpath)develop)Distribution)contexts
namespaceszHfrom setuptools import setup

setup(name='foo',
    packages=['foo'],
)
zprint "foo"
c           	   #   D  "   \         P                  ! 4       ;_uu_ 4       p\         P                  ! 4       ;_uu_ 4       pV P                  R V4       V P                  RV4       Rx  RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i5i)zsite.USER_BASEzsite.USER_SITEN)r   tempdirsetattr)monkeypatch	user_base	user_sites   &  ?/usr/lib/python3/dist-packages/setuptools/tests/test_develop.py	temp_userr      sk     					y9 0)< 0)<   
	 
		s3   B B)A9	'B/
B 9B	BB		B c              #   F  "   T pVP                  R 4      pVR,          pVP                  4       '       d   \        \        V4      4      hVP	                  R4      ;_uu_ 4       pVP                  \        4       RRR4       VR,          pVP	                  R4      ;_uu_ 4       pVP                  \        4       RRR4       VP                  4       ;_uu_ 4        Vx  RRR4       R#   + '       g   i     Lw; i  + '       g   i     LJ; i  + '       g   i     R# ; i5i)foosetup.pywNz__init__.py)	mkdirisfile
ValueErrordiropenwriteSETUP_PYINIT_PYas_cwd)tmpdirr   targetr   setupfinits   &&     r   test_envr!   &   s     F
,,u
CZE||~~V%%	CA	 
D	31	 
	 
 
 
	sN   A D!"C'8*D!"C:8 D!D
D!'C7	2D!:D
	D!D		D!c                      a  ] tR t^6t o ]! ]R4      t]! ]R4      ;'       d    ]P                  ]P                  8g  t	R t
]P                  P                  RR7      R 4       tRtV tR# )	TestDevelopreal_prefixbase_prefixc                    \         P                  ! R4       \        RR.RRR./R7      p\        V4      pRVn        \        V4      pVP                  4        Wn        VP                  4        R# )	zw
Test that console scripts are installed and that they reference
only the project by name and not the current version.
zTTODO: needs a fixture to cause 'develop' to be invoked without mutating environment.r   z0.0console_scriptszfoocmd = foo:foo)namepackagesversionentry_pointsr   N)	pytestskipdictr   script_namer   ensure_finalizedinstall_dirrun)selfr   settingsdistcmds   &&   r   test_console_scripts TestDevelop.test_console_scripts:   ss    
 	:	
 W!&$		
 H%%dm 	    z0legacy behavior retained for compatibility #4167reasonc                    \        R R7      p\        V4      p\        V4      pVP                  4        \        P
                  ! VP                  4      pVP                  R8X  g   Q hVP                  R8X  g   Q hR# )zFoo $$$ Bar_baz-bing)r(   z	.egg-linkFoo_Bar_baz_bingN)	r.   r   r   r0   pathlibPathegg_linksuffixstem)r3   r4   r5   r6   links   &    r   test_egg_link_filename"TestDevelop.test_egg_link_filenameU   sg    '
 H%dm||CLL){{k)))yy....r9    N)__name__
__module____qualname____firstlineno__hasattrsysin_virtualenvr%   prefixin_venvr7   r,   markxfailrD   __static_attributes____classdictcell____classdict__s   @r   r#   r#   6   s_     C/Mc=)KKcoo.KG6 [[PQ	/ R	/r9   r#   c                   6   a  ] tR t^bt o RtR tR tR tRtV t	R# )TestResolverz
TODO: These tests were written with a minimal understanding
of what _resolve_setup_path is intending to do. Come up with
more meaningful cases that look like real-world scenarios.
c                D    \         P                  ! R R R 4      R 8X  g   Q hR# ).Nr   _resolve_setup_pathr3   s   &r   test_resolve_setup_path_cwd(TestResolver.test_resolve_setup_path_cwdi   s    **3S9S@@@r9   c                D    \         P                  ! R RR 4      R8X  g   Q hR# )pkgsrY   ../NrZ   r\   s   &r   test_resolve_setup_path_one_dir,TestResolver.test_resolve_setup_path_one_dirl   s    **63?5HHHr9   c                D    \         P                  ! R RR4      R8X  g   Q hR# )zpkgs/rY   r`   ra   NrZ   r\   s   &r   .test_resolve_setup_path_one_dir_trailing_slash;TestResolver.test_resolve_setup_path_one_dir_trailing_slasho   s    **7C@EIIIr9   rF   N)
rG   rH   rI   rJ   __doc__r]   rb   re   rR   rS   rT   s   @r   rW   rW   b   s"     AIJ Jr9   rW   c                     a  ] tR t^st o ]R 4       t]P                  P                  ]	! ]
P                  P                  R4      4      RR7      ]P                  P                  ]P                  ! 4       R8H  RR7      R 4       4       tRtV tR	# )
TestNamespacesc           	     J   \         P                  R RR\        V4      .pV P                  4       ;_uu_ 4        \	        \        V4      .4      ;_uu_ 4        \
        P                  ! V4       RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)r   r   z--install-dirN)rL   
executablestrr   r   
subprocess
check_call)src_dirr   develop_cmds   && r   install_developTestNamespaces.install_developt   sp     NNK
 ^^$c&k]33%%k2 4 33 s#   BA>	,B>B	BB"	APPVEYORz-https://github.com/pypa/setuptools/issues/851r:   PyPyz.https://github.com/pypa/setuptools/issues/1202c           	        \         P                  ! VR4      p\         P                  ! VR4      pVR,          p\        P                  RRR\	        V4      R\	        V4      .p\
        P                  ! V4       V P                  W44       \         P                  ! V4       \        P                  RR	.p\        \	        V4      .4      ;_uu_ 4        \
        P                  ! V4       R
R
R
4       \        P                  RR.p\        \	        V4      .4      ;_uu_ 4        \
        P                  ! V4       R
R
R
4       R
#   + '       g   i     La; i  + '       g   i     R
# ; i)z
Installing two packages sharing the same namespace, one installed
naturally using pip or `--single-version-externally-managed`
and the other installed using `develop` should leave the namespace
in tact and both packages reachable by import.
z	myns.pkgAz	myns.pkgBr)   z-mpipinstallz-tz-cz"import myns.pkgA; import myns.pkgBNzimport pkg_resources)
r   build_namespace_packagerL   rk   rl   rm   rn   rq   make_site_dirr   )r3   r   pkg_Apkg_Br   install_cmd
try_importpkg_resources_imps   &&      r   !test_namespace_package_importable0TestNamespaces.test_namespace_package_importable   s    226;G226;G*$ NNJK
 	k*U+  (NN0


 !#f+//!!*- 0
 NN"

 !#f+//!!"34 0/ 0/ 0//s   D>E>E	E"	rF   N)rG   rH   rI   rJ   staticmethodrq   r,   rP   skipifboolosenvirongetplatformpython_implementationr   rR   rS   rT   s   @r   ri   ri   s   s     
3 
3 [[RZZ^^J'(>   [[&&(F2?  &5		&5r9   ri   )rg   r   r>   r   rm   rL   r,   setuptools._pathr   setuptools.command.developr   setuptools.distr    r   r   r   r   fixturer   r!   r#   rW   ri   rF   r9   r   <module>r      s     	    
  0 . ( "    )/ )/XJ J"<5 <5r9   