ó
šßÈ[c           @` sè   d  d l  m Z m Z m Z m Z d  d l Z d  d l Z d d l m Z m	 Z	 m
 Z
 d d l m Z d „  Z d „  Z d	 „  Z d
 „  Z d „  Z d „  Z d „  Z d „  Z e j j d ƒ d „  ƒ Z e j j d ƒ d „  ƒ Z d S(   i    (   t   absolute_importt   divisiont   print_functiont   unicode_literalsNi   (   t   checkt	   unescapert   writeri   (   t   sixc       
   C` s’   t  j ƒ  }  t j |  ƒ } | j d ƒ 5 | j d ƒ  | j d ƒ | j d ƒ Wd  QXWd  QXd j |  j ƒ  j	 ƒ  ƒ } | d k sŽ t
 ‚ d  S(   Nu   htmlu   bodyu   This is the contentu   commentu    u8   <html><body>Thisisthecontent<!--comment--></body></html>(   t   iot   StringIOR   t	   XMLWritert   tagt   datat   commentt   joint   getvaluet   splitt   AssertionError(   t   fht   wt   value(    (    s;   lib/python2.7/site-packages/astropy/utils/tests/test_xml.pyt   test_writer   s    c           C` sD   t  j d ƒ s t ‚ t  j d ƒ s* t ‚ t  j d ƒ s@ t ‚ d  S(   Nu   Fof32u   _Fof32u   32Fof(   R   t   check_idR   (    (    (    s;   lib/python2.7/site-packages/astropy/utils/tests/test_xml.pyt   test_check_id   s    c           C` s:   t  j d ƒ d k s t ‚ t  j d ƒ d k s6 t ‚ d  S(   Nu   Fof32u   @#fu   ___f(   R   t   fix_idR   (    (    (    s;   lib/python2.7/site-packages/astropy/utils/tests/test_xml.pyt   test_fix_id   s    c           C` s/   t  j d ƒ s t ‚ t  j d ƒ s+ t ‚ d  S(   Nu   tokenu   tokentoken(   R   t   check_tokenR   (    (    (    s;   lib/python2.7/site-packages/astropy/utils/tests/test_xml.pyt   test_check_token$   s    c           C` s/   t  j d ƒ s t ‚ t  j d ƒ s+ t ‚ d  S(   Nu
   image/jpegu   image(   R   t   check_mime_content_typeR   (    (    (    s;   lib/python2.7/site-packages/astropy/utils/tests/test_xml.pyt   test_check_mime_content_type)   s    c           C` s   t  j d ƒ s t ‚ d  S(   Nu"   https://github.com/astropy/astropy(   R   t   check_anyuriR   (    (    (    s;   lib/python2.7/site-packages/astropy/utils/tests/test_xml.pyt   test_check_anyuri.   s    c          C` sR   d }  d } t  j |  ƒ | k s' t ‚ d }  d } t  j |  ƒ | k sN t ‚ d  S(   Nu_   http://casu.ast.cam.ac.uk/ag/iphas-dsa%2FSubmitCone?DSACAT=IDR&amp;amp;DSATAB=Emitters&amp;amp;uM   http://casu.ast.cam.ac.uk/ag/iphas-dsa/SubmitCone?DSACAT=IDR&DSATAB=Emitters&s_   http://casu.ast.cam.ac.uk/ag/iphas-dsa%2FSubmitCone?DSACAT=IDR&amp;amp;DSATAB=Emitters&amp;amp;sM   http://casu.ast.cam.ac.uk/ag/iphas-dsa/SubmitCone?DSACAT=IDR&DSATAB=Emitters&(   R   t   unescape_allR   (   t   url_int   url_out(    (    s;   lib/python2.7/site-packages/astropy/utils/tests/test_xml.pyt   test_unescape_all2   s    c          C` s²   t  j d ƒ }  t |  ƒ t j k s* t ‚ |  d k s< t ‚ t  j d ƒ }  t |  ƒ t k sc t ‚ |  d k su t ‚ t  j d ƒ }  t |  ƒ t k sœ t ‚ |  d k s® t ‚ d  S(   Nu   This & Thatu   This &amp; Thati   u   1s   This & Thats   This &amp; That(   R   t
   xml_escapet   typeR   t	   text_typeR   t   strt   bytes(   t   s(    (    s;   lib/python2.7/site-packages/astropy/utils/tests/test_xml.pyt   test_escape_xmlB   s    u   writer.HAS_BLEACHc       	   C` se   t  j ƒ  }  t j |  ƒ } t j t ƒ  } | j d ƒ  Wd  QXWd  QXd t | ƒ k sa t	 ‚ d  S(   Nu   bleach_cleanu9   bleach package is required when HTML escaping is disabled(
   R   R	   R   R
   t   pytestt   raisest
   ValueErrort   xml_cleaning_methodR'   R   (   R   R   t   err(    (    s;   lib/python2.7/site-packages/astropy/utils/tests/test_xml.pyt   test_escape_xml_without_bleachP   s    u   not writer.HAS_BLEACHc          C` sç   t  j ƒ  }  t j |  ƒ } | j d ƒ / | j d ƒ | j d ƒ | j d t ƒ Wd  QX|  j	 ƒ  d k ss t
 ‚ t  j ƒ  }  t j |  ƒ } | j ƒ  / | j d ƒ | j d ƒ | j d t ƒ Wd  QX|  j	 ƒ  d k sã t
 ‚ d  S(   Nu   bleach_cleanu   tdu   <script>x</script> <em>OK</em>t   indentu4   <td>&lt;script&gt;x&lt;/script&gt; <em>OK</em></td>
u@   <td>&lt;script&gt;x&lt;/script&gt; &lt;em&gt;OK&lt;/em&gt;</td>
(   R   R	   R   R
   R.   t   startR   t   endt   FalseR   R   (   R   R   (    (    s;   lib/python2.7/site-packages/astropy/utils/tests/test_xml.pyt   test_escape_xml_with_bleach[   s    (   t
   __future__R    R   R   R   R   R+   t   xmlR   R   R   t   externR   R   R   R   R   R   R   R#   R*   t   markt   skipifR0   R5   (    (    (    s;   lib/python2.7/site-packages/astropy/utils/tests/test_xml.pyt   <module>   s   "								