U
    e»{j–  ã                   @   sR   d dl Z d dlZd dlmZ dZdZdZede  e ZG dd„ dƒZd	d
„ Z	dS )é    N)Ú_fast_iterparsez¯<?xml version="1.0" encoding="UTF-8"?>
<VOTABLE>
 <RESOURCE type="results">
  <TABLE>
   <FIELD ID="foo" name="foo" datatype="int" arraysize="1"/>
    <DATA>
     <TABLEDATA>
z<TR><TD>0</TD></TR>
z@
    </TABLEDATA>
   </DATA>
  </TABLE>
 </RESOURCE>
</VOTABLE>
é}   c                   @   s$   e Zd Zdd„ Zdd„ Zdd„ ZdS )ÚUngzipFileWrapperc                 K   s   || _ t dtj ¡| _d S )Né   )Ú_fileÚzlibÚdecompressobjÚ	MAX_WBITSÚ_z)ÚselfÚfdÚkwargs© r   úe/var/www/html/bwave/python/venv/lib/python3.8/site-packages/astropy/utils/xml/tests/test_iterparse.pyÚ__init__R   s    zUngzipFileWrapper.__init__c                 C   s@   t dtd|ƒƒ}| j |¡}| j |¡}t|ƒdkr<|  ¡  |S )Né   i   r   )ÚmaxÚminr   Úreadr
   Ú
decompressÚlenÚclose)r   Zrequested_lengthZclamped_lengthÚ
compressedZ	plaintextr   r   r   r   V   s    zUngzipFileWrapper.readc                 C   s   t | j|ƒS )N)Úgetattrr   )r   Úattrr   r   r   Ú__getattr__`   s    zUngzipFileWrapper.__getattr__N)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r   r   Q   s   
r   c                  C   sn   d} t  t jt jt j|  ¡}| t ¡ ¡}|| ¡  }t	 
|¡}| d¡ d}t|ƒ}t|j|ƒ}t|ƒ d S )Nr   r   i   )r   ÚcompressobjÚZ_BEST_COMPRESSIONÚDEFLATEDr	   ÚcompressÚVOTABLE_XMLÚencodeÚflushÚioÚBytesIOÚseekr   r   r   Úlist)Zzlib_GZIP_STYLE_HEADERZcompoÚsr   ZMINIMUM_REQUESTABLE_BUFFER_SIZEZuncompressed_fdÚiterabler   r   r   Ú test_iterparser_over_read_simplep   s      ÿ

r,   )
r&   r   Zastropy.utils.xml.iterparserr   ÚHEADERZROWZFOOTERr#   r   r,   r   r   r   r   Ú<module>   s   "	