ó
|G–Rc           @   sÍ  d  Z  d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l	 m
 Z
 d d l m Z m Z d d l m Z d d l m Z m Z d d l m Z d d l m Z d d	 l m Z i d
 d 6d d 6d
 g d 6i d g d
 6d 6Z d e Z e j d f k r?d j d ƒ Z n d Z d „  Z d „  Z d d „ Z  d „  Z! d „  Z" d e j# f d „  ƒ  YZ$ d e
 j% f d „  ƒ  YZ& d  e
 j% f d! „  ƒ  YZ' d" „  Z( d S(#   s   sdist testsiÿÿÿÿN(   t   environment(   t   StringIOt   unicode(   t   skipIf(   t   sdistt   walk_revctrl(   t   manifest_maker(   t   Distribution(   t	   svn_utilst
   sdist_testt   names   0.0t   versiont   packagess   *.txtt   package_datas*   from setuptools import setup

setup(**%r)
i   s   smÃ¶rbrÃ¶d.pys   latin-1s   smörbröd.pyc           C   s0   t  j t  j a a t ƒ  t ƒ  t  _ t  _ d  S(   N(   t   syst   stdoutt   stderrt
   old_stdoutt
   old_stderrR   (    (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt   quiet+   s    c           C   s   t  t t _ t _ d  S(   N(   R   R   R   R   R   (    (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt   unquiet0   s    s   utf-8c         C   s    t  j d k r |  j | ƒ S|  S(   Ni   (   i   (   R   t   version_infot   encode(   t   st   encoding(    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt   b5   s    c         C   sX   t  j d k rA t |  t ƒ rA |  j t j j d ƒ t d ƒ ƒ S|  j t j d ƒ Sd  S(   Ni   t   asciit   /(   i   (	   R   R   t
   isinstancet   strt   replacet   ost   sepR   R   (   t   path(    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt   posix<   s    "c         C   sk   t  |  t ƒ r t j d |  ƒ Sy4 |  j d ƒ }  t j d |  ƒ }  |  j d ƒ }  Wn t k
 rf n X|  S(   Nt   NFDs   utf-8(   R   R   t   unicodedatat	   normalizet   decodeR   t   UnicodeError(   R!   (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt	   decomposeD   s    t   TestSdistTestc           B   s°   e  Z d  „  Z d „  Z d „  Z d „  Z e j d k rN d „  Z d „  Z	 n  d „  Z
 e j d k rr d „  Z n  e e j d k o“ e j ƒ  d	 k d
 ƒ d „  ƒ Z d „  Z RS(   c         C   sÎ   t  j ƒ  |  _ t t j j |  j d ƒ d ƒ } | j t ƒ | j	 ƒ  t j j |  j d ƒ } t j
 | ƒ x< d d d d g D]( } t t j j | | ƒ d ƒ j	 ƒ  q Wt j ƒ  |  _ t j |  j ƒ d  S(   Ns   setup.pyt   wR	   s   __init__.pys   a.txts   b.txts   c.rst(   t   tempfilet   mkdtempt   temp_dirt   openR   R!   t   joint   writet   SETUP_PYt   closet   mkdirt   getcwdt   old_cwdt   chdir(   t   selft   ft   test_pkgt   fname(    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt   setUpR   s    !
&c         C   s$   t  j |  j ƒ t j |  j ƒ d  S(   N(   R   R6   R5   t   shutilt   rmtreeR-   (   R7   (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt   tearDownc   s    c         C   sÁ   t  t ƒ } d | _ t | ƒ } | j ƒ  t ƒ  z | j ƒ  Wd t ƒ  X| j j	 } |  j
 t j j d d ƒ | k ƒ |  j
 t j j d d ƒ | k ƒ |  j
 t j j d d ƒ | k ƒ d S(   s²   Regression test for pull request #4: ensures that files listed in
        package_data are included in the manifest even if they're not added to
        version control.
        s   setup.pyNR	   s   a.txts   b.txts   c.rst(   R   t   SETUP_ATTRSt   script_nameR   t   ensure_finalizedR   t   runR   t   filelistt   filest
   assertTrueR   R!   R/   (   R7   t   distt   cmdt   manifest(    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt   test_package_data_in_sdistg   s    	
""c         C   sL  t  t ƒ } d | _ t | ƒ } t j j d d ƒ | _ t j d ƒ t j j d d ƒ } t	 ƒ  z+ | j
 ƒ  | j j j | ƒ | j ƒ  Wd  t ƒ  Xt | j d ƒ } | j ƒ  } | j ƒ  y | j d ƒ } Wn. t k
 rt j ƒ  d } |  j | ƒ n Xt j d
 k r/|  j t | ƒ | k ƒ n |  j t | ƒ | k ƒ d  S(   Ns   setup.pys   sdist_test.egg-infos   SOURCES.txtR	   s   smÃ¶rbrÃ¶d.pyt   rbUs   UTF-8i   i   (   i   (   R   R?   R@   R   R   R!   R/   RH   R3   R   RB   RC   RD   t   appendt   write_manifestR   R.   t   readR2   R&   t   UnicodeDecodeErrorR   t   exc_infot   failR   RE   R"   (   R7   RF   t   mmt   filenameRH   t   contentst
   u_contentst   e(    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt+   test_manifest_is_written_with_utf8_encoding~   s.    	

i   c         C   sS  t  t ƒ } d | _ t | ƒ } t j j d d ƒ | _ t j d ƒ t j j t	 d ƒ t	 d ƒ ƒ } t
 ƒ  z: | j ƒ  | j d ƒ } | j j j | ƒ | j ƒ  Wd  t ƒ  Xt | j d ƒ } | j ƒ  } | j ƒ  y | j d ƒ Wn. t k
 rt j ƒ  d	 } |  j | ƒ n X|  j t | ƒ | k ƒ |  j | | j j k ƒ d  S(
   Ns   setup.pys   sdist_test.egg-infos   SOURCES.txtR	   s   smÃ¶rbrÃ¶d.pys   utf-8RJ   s   UTF-8i   (   R   R?   R@   R   R   R!   R/   RH   R3   R   R   RB   R&   RC   RD   RK   RL   R   R.   RM   R2   RN   R   RO   RP   RE   R"   (   R7   RF   RQ   RR   t
   u_filenameRH   RS   RU   (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt)   test_write_manifest_allows_utf8_filenames¦   s.    	!

c         C   sP  t  t ƒ } d | _ t | ƒ } t j j d d ƒ | _ t j d ƒ t j j t	 d ƒ t
 ƒ } t ƒ  z= | j ƒ  | j d d ƒ } | j j j | ƒ | j ƒ  Wd  t ƒ  Xt | j d ƒ } | j ƒ  } | j ƒ  y | j d ƒ Wn. t k
 rt j ƒ  d	 } |  j | ƒ n X|  j t | ƒ | k ƒ |  j | | j j k ƒ d  S(
   Ns   setup.pys   sdist_test.egg-infos   SOURCES.txtR	   s   utf-8t   surrogateescapeRJ   s   UTF-8i   (   R   R?   R@   R   R   R!   R/   RH   R3   R   t   LATIN1_FILENAMER   RB   R&   RC   RD   RK   RL   R   R.   RM   R2   RN   R   RO   RP   t   assertFalseR"   (   R7   RF   RQ   RR   RW   RH   RS   RU   (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt,   test_write_manifest_skips_non_utf8_filenamesÍ   s.    	

c         C   s4  t  t ƒ } d | _ t | ƒ } | j ƒ  t ƒ  z | j ƒ  Wd  t ƒ  Xt j	 j
 t d ƒ t d ƒ ƒ } t j	 j
 d d ƒ | _ t | j d ƒ } | j t d ƒ | ƒ | j ƒ  t | d ƒ j ƒ  g  | j _ t ƒ  z | j ƒ  Wd  t ƒ  Xt j d k r| j d
 ƒ } n  |  j | | j j k ƒ d  S(   Ns   setup.pyR	   s   smÃ¶rbrÃ¶d.pys   sdist_test.egg-infos   SOURCES.txtt   abs   
R*   i   s   utf-8(   i   (   R   R?   R@   R   RA   R   RB   R   R   R!   R/   R   RH   R.   R0   R2   RC   RD   t   read_manifestR   R   R&   RE   (   R7   RF   RG   RR   RH   (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt(   test_manifest_is_read_with_utf8_encodingô   s,    	
!
c         C   sQ  t  t ƒ } d | _ t | ƒ } | j ƒ  t ƒ  z | j ƒ  Wd  t ƒ  Xt j	 j
 t d ƒ t ƒ } t j	 j
 d d ƒ | _ t | j d ƒ } | j t d ƒ | ƒ | j ƒ  t | d ƒ j ƒ  g  | j _ t ƒ  zC y | j ƒ  Wn. t k
 rt j ƒ  d } |  j | ƒ n XWd  t ƒ  X| j d	 ƒ } |  j | | j j k ƒ d  S(
   Ns   setup.pyR	   s   sdist_test.egg-infos   SOURCES.txtR]   s   
R*   i   s   latin-1(   R   R?   R@   R   RA   R   RB   R   R   R!   R/   R   RZ   RH   R.   R0   R2   RC   RD   R^   RN   R   RO   RP   R&   R[   (   R7   RF   RG   RR   RH   RU   (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt+   test_read_manifest_skips_non_utf8_filenames  s2    	

s   UTF-8sM   Unittest fails if locale is not utf-8 but the manifests is recorded correctlyc         C   sq  t  t ƒ } d | _ t | ƒ } | j ƒ  t j j t d ƒ t d ƒ ƒ } t	 | d ƒ j
 ƒ  t ƒ  z | j ƒ  Wd  t ƒ  Xt j d k r� t | ƒ } n  t j d k rTt j ƒ  } t j d k r)| d k rþ | j d ƒ } |  j | | j j k ƒ qQ| j d	 ƒ } |  j | | j j k ƒ qm| j d
 ƒ } |  j | | j j k ƒ n |  j | | j j k ƒ d  S(   Ns   setup.pyR	   s   smÃ¶rbrÃ¶d.pyR*   t   darwini   t   win32t   cp1252t   mbcss   utf-8(   i   (   R   R?   R@   R   RA   R   R!   R/   R   R.   R2   R   RB   R   R   t   platformR(   R   t   getfilesystemencodingR&   RE   RC   RD   (   R7   RF   RG   RR   t   fs_enc(    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt%   test_sdist_with_utf8_encoded_filenameD  s.    	
!c         C   sM  t  t ƒ } d | _ t | ƒ } | j ƒ  t j j t d ƒ t	 ƒ } t
 | d ƒ j ƒ  |  j t j j | ƒ ƒ t ƒ  z | j ƒ  Wd  t ƒ  Xt j d k r0t j d k rt j ƒ  } | d k rÚ | j d ƒ } n | j d ƒ } |  j | | j j k ƒ qI| j d ƒ } |  j | | j j k ƒ n |  j | | j j k ƒ d  S(	   Ns   setup.pyR	   R*   i   Rb   Rd   s   latin-1(   i   (   R   R?   R@   R   RA   R   R!   R/   R   RZ   R.   R2   RE   t   isfileR   RB   R   R   R   Re   Rf   R&   RC   RD   R[   (   R7   RF   RG   RR   Rg   (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt'   test_sdist_with_latin1_encoded_filenamek  s*    	
(   i   (   i   (   i   (   t   __name__t
   __module__R;   R>   RI   RV   R   R   RX   R\   R_   R`   R   t   localet   getpreferredencodingRh   Rj   (    (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyR)   P   s   				&	''	&(!&t   TestDummyOutputc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s>   t  j j d d d d ƒ |  _ d |  _ t t |  ƒ j ƒ  d  S(   Nt
   setuptoolst   testst   svn_datas	   dummy.zipt   dummy(   R   R!   R/   t   datafilet   datanamet   superRo   R;   (   R7   (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyR;   •  s    	c   	      C   s  t  j d g d |  j d d ƒ\ } } | rj d t j j d ƒ } | d | 7} | | 7} t | ƒ ‚ n  | j ƒ  } d& } d# t j j d ƒ GHxi | D]a } t } x3 | D]+ } t	 j
 | | ƒ r« d$ | GHt } Pq« q« W| s˜ t d% | | f ƒ ‚ q˜ q˜ W| S('   NR   t   pypatht   data_streami    s   DIR: t   .s   
  SDIST RETURNED: %i

s   running sdists   running egg_infos   creating dummy\.egg-infos   writing dummy\.egg-infos*   writing top-level names to dummy\.egg-infos+   writing dependency_links to dummy\.egg-infos&   writing manifest file 'dummy\.egg-infos&   reading manifest file 'dummy\.egg-infos(   reading manifest template 'MANIFEST\.in's   creating dummy-0.1.1s"   making hard links in dummy-0\.1\.1s   copying files to dummy-0\.1\.1s   copying \S+ -> dummy-0\.1\.1s   copying dummys   copying dummy\.egg-infos!   hard linking \S+ -> dummy-0\.1\.1s   hard linking dummys   hard linking dummy\.egg-infos   Writing dummy-0\.1\.1s   creating dists   creating 'dists   Creating tar archives   running checks   adding 'dummy-0\.1\.1s,   tar .+ dist/dummy-0\.1\.1\.tar dummy-0\.1\.1s   gzip .+ dist/dummy-0\.1\.1\.tars4   removing 'dummy-0\.1\.1' \(and everything under it\)s	       DIR: s	      READ: s   Unexpexected: %s
-in-
%s(   s   running sdists   running egg_infos   creating dummy\.egg-infos   writing dummy\.egg-infos*   writing top-level names to dummy\.egg-infos+   writing dependency_links to dummy\.egg-infos&   writing manifest file 'dummy\.egg-infos&   reading manifest file 'dummy\.egg-infos(   reading manifest template 'MANIFEST\.in's&   writing manifest file 'dummy\.egg-infos   creating dummy-0.1.1s"   making hard links in dummy-0\.1\.1s   copying files to dummy-0\.1\.1s   copying \S+ -> dummy-0\.1\.1s   copying dummys   copying dummy\.egg-infos!   hard linking \S+ -> dummy-0\.1\.1s   hard linking dummys   hard linking dummy\.egg-infos   Writing dummy-0\.1\.1s   creating dists   creating 'dists   Creating tar archives   running checks   adding 'dummy-0\.1\.1s,   tar .+ dist/dummy-0\.1\.1\.tar dummy-0\.1\.1s   gzip .+ dist/dummy-0\.1\.1\.tars4   removing 'dummy-0\.1\.1' \(and everything under it\)(   R    t   run_setup_pyR5   R   R!   t   abspatht   AssertionErrort
   splitlinest   Falset   ret   matcht   True(	   R7   t   codet   datat   infot	   datalinest   possiblet   linet   foundt   pattern(    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt   _run›  sb    	
                           	c         C   s   |  j  ƒ  d  S(   N(   RŠ   (   R7   (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt   test_sourcesÔ  s    (   Rk   Rl   R;   RŠ   R‹   (    (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyRo   “  s   		9t   TestSvnc           B   s   e  Z d  „  Z d „  Z RS(   c         C   så   t  j j ƒ  } t g  | j d ƒ D] } t | ƒ ^ q" d  ƒ |  _ |  j s\ t d ƒ ‚ n= |  j d k  r~ t d | ƒ ‚ n |  j d k r™ d |  _ n  d	 |  j |  _ t	 j
 j d
 d d |  j d ƒ |  _ t t |  ƒ j ƒ  d  S(   NRy   i   s   No SVN tools installedi   i   s   Insufficient SVN Version %si	   i   s   svn%i%i_exampleRp   Rq   Rr   s   .zip(   i   i   (   i   i	   (   i   i   (   R   t   SvnInfot   get_svn_versiont   tuplet   splitt   intt   base_versiont
   ValueErrorRu   R   R!   R/   Rt   Rv   RŒ   R;   (   R7   R   t   x(    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyR;   Ú  s    5	c         C   s  |  j  d k r d } d } n d } d } t t j j d ƒ t j j | d ƒ t j j | d	 ƒ t j j | d
 ƒ t j j | d ƒ t j j | d	 ƒ t j j | d
 ƒ t j j | d ƒ t j j | d ƒ t j j d d
 ƒ t j j d | d ƒ t j j d | d	 ƒ t j j d | d ƒ t j j d | d ƒ t j j d | d ƒ t j j d | d	 ƒ t j j d | d ƒ t j j d | d ƒ t j j d | d ƒ t j j d d d ƒ t j j d d ƒ t j j d d ƒ g ƒ } |  j t d „  t ƒ  Dƒ ƒ | ƒ d  S(   Ni   i   s   third party2s   third party3t   third_party2t   third_party3s   a files   Changes.txtt   MD5SUMSs
   README.txts   TODO.txtt   fint   third_partyt   folders   WatashiNiYomimasu.txtt   oopss   ZuMachen.txts
   lalala.txts	   quest.txtc         s   s   |  ] } | Vq d  S(   N(    (   t   .0R”   (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pys	   <genexpr>  s    (   i   i   (   R’   t   setR   R!   R/   t   assertEqualR   (   R7   t   folder2t   folder3t   expected(    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt   test_walksvnë  s:    	(   Rk   Rl   R;   R¢   (    (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyRŒ   Ø  s   	c           C   s   t  j j t ƒ S(   N(   t   unittestt   defaultTestLoadert   loadTestsFromNameRk   (    (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt
   test_suite  s    ()   t   __doc__Rm   R   R<   R   R+   R£   R$   R   t   setuptools.testsR    t   setuptools.compatR   R   t   setuptools.tests.py26compatR   t   setuptools.command.sdistR   R   t   setuptools.command.egg_infoR   t   setuptools.distR   Rp   R   R?   R1   R   R   RZ   R   R   R   R"   R(   t   TestCaseR)   t   ZippedEnvironmentRo   RŒ   R¦   (    (    (    sU   /opt/xtal/ccp4-6.5-linux32/lib/python2.7/site-packages/setuptools/tests/test_sdist.pyt   <module>   sD   

				ÿ DE9