ó
^\kdc           @   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 m Z d d l m	 Z	 m
 Z
 d d l m Z d d l m Z d „  Z e ƒ  Z d e j f d	 „  ƒ  YZ d
 „  Z d e j f d „  ƒ  YZ d e j f d „  ƒ  YZ d e j f d „  ƒ  YZ d e j f d „  ƒ  YZ d „  Z d S(   s	   svn testsiÿÿÿÿN(   t   environment(   t   unicodet   unichr(   t	   svn_utils(   t   skipIfc           C   sL   y* t  j d d g d t j d k ƒt SWn t t  j f k
 rG t SXd  S(   Nt   svns	   --versiont   shellt   win32(   t
   subprocesst
   check_callt   syst   platformt   Truet   OSErrort   CalledProcessErrort   False(    (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt   _do_svn_check   s    t   TestSvnVersionc           B   s*   e  Z d  „  Z e e d ƒ d „  ƒ Z RS(   c         C   s¼   d  } x, t j D]! } | j ƒ  d k r | } q q W| d  k rj y |  j d ƒ Wqj t k
 rf d  SXn  t j | } d t j | <z# t j j ƒ  } |  j	 | d ƒ Wd  | t j | <Xd  S(   Nt   paths$   Cannot figure out how to modify patht    (
   t   Nonet   ost   environt   lowert   skipTestt   AttributeErrorR   t   SvnInfot   get_svn_versiont   assertEqual(   t   selft   path_variablet   envt   old_patht   version(    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt   test_no_svn_found   s    s"   No SVN to text, in the first placec         C   s#   t  j j ƒ  } |  j | d ƒ d  S(   NR   (   R   R   R   t   assertNotEqual(   R   R!   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt   test_svn_should_exist0   s    (   t   __name__t
   __module__R"   R   t
   _svn_checkR$   (    (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyR      s   	c         C   sM   d  } z, t j |  d d d ƒ} | j ƒ  } | SWd  | rH | j ƒ  n  Xd  S(   Nt   rt   encodings   utf-8(   R   t   iot   opent   readt   close(   R   t   fileobjt   data(    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt   _read_utf8_file5   s    t   ParserInfoXMLc           B   sG   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   sÔ   t  j j d d d | d ƒ } d | } t | ƒ } t d j | d f ƒ d f d j | d	 f ƒ d
 f d j | d	 d f ƒ d f d j | d	 d f ƒ d f g ƒ } |  j t d „  t j | ƒ Dƒ ƒ | ƒ d  S(   Nt
   setuptoolst   testst   svn_datas	   _info.xmls
   %s_examples   \s   a filet   filet   foldert   dirs
   lalala.txts	   quest.txtc         s   s   |  ] } | Vq d  S(   N(    (   t   .0t   x(    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pys	   <genexpr>Q   s    (   R   R   t   joinR0   t   setR   R   t   parse_dir_entries(   R   t   svn_namet
   ext_spacesR   t   example_baseR/   t   expected(    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt   parse_testerB   s    
$"c         C   s   |  j  d t ƒ d  S(   Nt   svn13(   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt
   test_svn13T   s    c         C   s   |  j  d t ƒ d  S(   Nt   svn14(   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt
   test_svn14W   s    c         C   s   |  j  d t ƒ d  S(   Nt   svn15(   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt
   test_svn15Z   s    c         C   s   |  j  d t ƒ d  S(   Nt   svn16(   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt
   test_svn16]   s    c         C   s   |  j  d t ƒ d  S(   Nt   svn17(   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt
   test_svn17`   s    c         C   s   |  j  d t ƒ d  S(   Nt   svn18(   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt
   test_svn18c   s    (	   R%   R&   RA   RC   RE   RG   RI   RK   RM   (    (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyR1   @   s   						t   ParserExternalXMLc           B   s5   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z RS(   c   
      C   su  t  j j d d d | d ƒ } | d } t | ƒ } | rJ d } d } n d } d	 } t t  j j | | f ƒ t  j j | | f ƒ t  j j | t d
 ƒ t d ƒ t d ƒ f ƒ t  j j | d | f ƒ t  j j | d | f ƒ t  j j | d t d
 ƒ t d ƒ t d ƒ f ƒ g ƒ } t d „  | Dƒ ƒ } t  j j d ƒ }	 |  j t d „  t	 j
 | |	 ƒ Dƒ ƒ | ƒ d  S(   NR2   R3   R4   s   _ext_list.xmlt   _examples   third party2s   third party3t   third_party2t   third_party3t   third_partyi'Y  iËN  R6   c         s   s!   |  ] } t  j j | ƒ Vq d  S(   N(   R   R   t   normpath(   R8   R9   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pys	   <genexpr>ƒ   s    s   C:t   developmentt   svn_examplec         s   s   |  ] } | Vq d  S(   N(    (   R8   R9   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pys	   <genexpr>…   s    (   s   C:RT   RU   (   R   R   R:   R0   R;   t   sepR   R   R   R   t   parse_externals_xml(
   R   R=   R>   R   R?   R/   t   folder2t   folder3R@   t   dir_base(    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRA   h   s,    
	#,c         C   s   |  j  d t ƒ d  S(   NRF   (   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRG   ˆ   s    c         C   s   |  j  d t ƒ d  S(   NRH   (   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRI   ‹   s    c         C   s   |  j  d t ƒ d  S(   NRJ   (   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRK   Ž   s    c         C   s   |  j  d t ƒ d  S(   NRL   (   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRM   ‘   s    (   R%   R&   RA   RG   RI   RK   RM   (    (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRN   f   s
   	 			t   ParseExternalc           B   sG   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   sŽ   t  j j d d d | d ƒ } t | ƒ } | rL t d d d d g ƒ } n t d	 d
 d g ƒ } |  j t d „  t j | ƒ Dƒ ƒ | ƒ d  S(   NR2   R3   R4   s   _ext_list.txts   third party2s   third party3s   third party3bRR   RP   RQ   c         s   s   |  ] } | Vq d  S(   N(    (   R8   R9   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pys	   <genexpr>¢   s    (   R   R   R:   R0   R;   R   R   t   parse_external_prop(   R   R=   R>   R   R/   R@   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRA   —   s    	"c         C   s   |  j  d t ƒ d  S(   NRB   (   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRC   ¥   s    c         C   s   |  j  d t ƒ d  S(   NRD   (   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRE   ¨   s    c         C   s   |  j  d t ƒ d  S(   NRF   (   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRG   «   s    c         C   s   |  j  d t ƒ d  S(   NRH   (   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRI   ®   s    c         C   s   |  j  d t ƒ d  S(   NRJ   (   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRK   ±   s    c         C   s   |  j  d t ƒ d  S(   NRL   (   RA   R   (   R   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRM   ´   s    (	   R%   R&   RA   RC   RE   RG   RI   RK   RM   (    (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyR[   •   s   						t   TestSvnc           B   s\   e  Z d  „  Z e e d ƒ d „  ƒ Z e e d ƒ d „  ƒ Z e e d ƒ d „  ƒ Z RS(   c         C   sé   t  j j ƒ  } | s+ d  |  _ d  |  _ d  St g  | j d ƒ d  D] } t | ƒ ^ qB ƒ |  _	 |  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(   Nt   .i   i   i   s   Insufficient SVN Version %si	   i   s   svn%i%i_exampleR2   R3   R4   s   .zip(   i   i   (   i   i	   (   i   i   (   R   R   R   R   t   datanamet   datafilet   tuplet   splitt   intt   base_versiont
   ValueErrorR   R   R:   t   superR]   t   setUp(   R   R!   R9   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyRg   º   s    		5s"   No SVN to text, in the first placec         C   s,   t  j j d ƒ j ƒ  } |  j | d ƒ d  S(   NR^   i   (   R   R   t   loadt   get_revisionR   (   R   t   rev(    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt   test_revisionÎ   s    c         C   sŸ   t  t j j d ƒ d f t j j d ƒ d f t j j d d ƒ d f t j j d d ƒ d f g ƒ } t j j d ƒ } |  j t  d „  | j Dƒ ƒ | ƒ d  S(	   Ns   a fileR5   R6   R7   s
   lalala.txts	   quest.txtR^   c         s   s   |  ] } | Vq d  S(   N(    (   R8   R9   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pys	   <genexpr>Þ   s    (	   R;   R   R   R:   R   R   Rh   R   t   entries(   R   R@   t   info(    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt   test_entriesÓ   s    !c      	   C   sÛ   |  j  d
 k r d } d } n d } d } t t j j | ƒ t j j | ƒ t j j d ƒ t j j d | ƒ t j j d | ƒ t j j d d ƒ g ƒ } t j j d	 ƒ } |  j t g  | j	 D] } | ^ q¾ ƒ | ƒ d  S(   Ni   i   s   third party2s   third party3RP   RQ   RR   R6   R^   (   i   i   (
   Rd   R;   R   R   R:   R   R   Rh   R   t	   externals(   R   RX   RY   R@   Rm   R9   (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt   test_externalsà   s    	(   R%   R&   Rg   R   R'   Rk   Rn   Rp   (    (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyR]   ¸   s   	c           C   s   t  j j t ƒ S(   N(   t   unittestt   defaultTestLoadert   loadTestsFromNameR%   (    (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt
   test_suiteô   s    (   t   __doc__R*   R   R   R
   Rq   t   setuptools.testsR    t   setuptools.compatR   R   R2   R   t   setuptools.tests.py26compatR   R   R'   t   TestCaseR   R0   R1   RN   R[   t   ZippedEnvironmentR]   Rt   (    (    (    sG   /var/www/testScraper/venv/build/setuptools/setuptools/tests/test_svn.pyt   <module>   s$   			&/#<