Ë
    0Ò^jw  ã                   óÖ   — 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	 ddl
mZ ddlZddlmZmZ ddlmZ ddlZddlmZmZmZmZmZmZ ed	„ «       Zd
„ Zd„ Zd„ Z G d„ d«      Zy)z
 Testing

é    N)ÚBytesIO)Úmkstemp)Úcontextmanager)Úassert_Úassert_equal)Úraises)Úmake_streamÚGenericStreamÚZlibInputStreamÚ
_read_intoÚ_read_stringÚ
BLOCK_SIZEc               #   óH  K  — d} t        «       \  }}t        j                  |d«      5 }|j                  | «       d d d «       t	        |d«      5 }t        | «      }t        | «      }|||f–— d d d «       t        j                  |«       y # 1 sw Y   ŒQxY w# 1 sw Y   Œ+xY w­w)Nó   a stringÚwbÚrb)r   ÚosÚfdopenÚwriteÚopenr   Úunlink)ÚvalÚfdÚfnameÚfsÚgsÚcss         úm/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/scipy/io/matlab/tests/test_streams.pyÚsetup_test_filer      s’   è ø€ à
€CÜ“	�I€Bˆä	�‰�2�tÓ	ð  Ø
�‰�Œ÷ä	ˆe�TÓ	ð ˜bÜ�S‹\ˆÜ�S‹\ˆØ�"�bˆjÒ÷ô ‡I�IˆeÕ÷ð ú÷ð üs3   ‚&B"¨B
ºB"ÁBÁ,B"Â
BÂB"ÂBÂB"c                  óŽ   — t        «       5 \  } }}t        t        t        |«      t        «      «       d d d «       y # 1 sw Y   y xY w©N)r   r   Ú
isinstancer	   r
   )r   r   r   s      r   Útest_make_streamr#   *   s8   € Ü	Ó	ð <™l˜r 2 rä”
œ; r›?¬MÓ:Ô;÷<÷ <ñ <ús	   ‹';»Ac                  ó2  — t        «       5 \  } }}| ||fD ]ë  }t        |«      }|j                  d«      }t        |d«       t        |j	                  «       d«       |j                  d«      }t        |d«       t        |j	                  «       d«       |j                  dd«      }t        |d«       t        |j	                  «       d«       |j                  dd«      }t        |d«       t        |j	                  «       d«       Œí 	 d d d «       y # 1 sw Y   y xY w)Nr   é   é   é   é   éþÿÿÿé   )r   r	   Úseekr   Útell©r   r   r   ÚsÚstÚress         r   Útest_tell_seekr1   0   sã   € Ü	Ó	ð '™l˜r 2 rØ�b˜"�ò 	'ˆAÜ˜Q“ˆBØ—'‘'˜!“*ˆCÜ˜˜aÔ Ü˜Ÿ™› AÔ&Ø—'‘'˜!“*ˆCÜ˜˜aÔ Ü˜Ÿ™› AÔ&Ø—'‘'˜!˜Q“-ˆCÜ˜˜aÔ Ü˜Ÿ™› AÔ&Ø—'‘'˜"˜a“.ˆCÜ˜˜aÔ Ü˜Ÿ™› AÕ&ñ	'÷'÷ 'ñ 'ús   ‹C8DÄDc                  óŽ  — t        «       5 \  } }}| ||fD �]  }t        |«      }|j                  d«       |j                  d«      }t	        |d«       |j                  d«       |j                  d«      }t	        |d«       |j                  d«       t        |d«      }t	        |d«       t        |d«      }t	        |d«       t        t        t
        |d«       |j                  d«       t        |d«      }t	        |d«       t        |d«      }t	        |d«       t        t        t        |d«       �Œ 	 d d d «       y # 1 sw Y   y xY w)Nr   éÿÿÿÿr   é   s   a sts   ringr&   )	r   r	   r+   Úreadr   r   Úassert_raisesÚOSErrorr   r-   s         r   Ú	test_readr8   B   s  € Ü	Ó	ð 8™l˜r 2 rØ�b˜"�ó 	8ˆAÜ˜Q“ˆBØ�G‰G�AŒJØ—'‘'˜"“+ˆCÜ˜˜nÔ-Ø�G‰G�AŒJØ—'‘'˜!“*ˆCÜ˜˜jÔ)à�G‰G�AŒJÜ˜R Ó#ˆCÜ˜˜jÔ)Ü˜R Ó#ˆCÜ˜˜gÔ&Üœ'¤:¨r°1Ô5à�G‰G�AŒJÜ˜r 1Ó%ˆCÜ˜˜jÔ)Ü˜r 1Ó%ˆCÜ˜˜gÔ&Üœ'¤<°°QÖ7ñ+	8÷8÷ 8ñ 8ús   ‹D&D;Ä;Ec                   óN  — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	e
j                  j                   ej                  «       dk(  xr ej                   d	k\  d
¬«      d„ «       Ze
j                  j                   ej                  «       dk(  xr ej                   d	k\  d
¬«      d„ «       Zy)ÚTestZlibInputStreamc                 óˆ   — t        j                  |«      }t        j                  |«      }t	        |«      }|t        |«      |fS r!   )ÚrandomÚ	randbytesÚzlibÚcompressr   Úlen)ÚselfÚsizeÚdataÚcompressed_dataÚstreams        r   Ú	_get_datazTestZlibInputStream._get_data]   s<   € Ü×Ñ Ó%ˆÜŸ-™-¨Ó-ˆÜ˜Ó)ˆØ”s˜?Ó+¨TÐ1Ð1ó    c           	      óÖ   ‡ — dddt         dz  t         dz
  t         t         dz   dt         z  dz
  g}t         dz  t         dz
  t         t         dz   g}ˆ fd„}|D ]  }|D ]  } |||«       Œ Œ y )Nr   r'   é
   r&   c                 óÔ   •— ‰	j                  | «      \  }}}t        ||«      }d}d}	 |j                  t        || |z
  «      «      }|sn|t	        |«      z  }||z  }Œ5t        ||«       y )NrG   r   )rF   r   r5   Úminr@   r   )
rB   Ú	read_sizeÚcompressed_streamÚcompressed_data_lenrC   rE   Údata2Úso_farÚblockrA   s
            €r   Úcheckz,TestZlibInputStream.test_read.<locals>.checkj   s�   ø€ Ø;?¿>¹>È$Ó;OÑ8ÐÐ2°DÜ$Ð%6Ð8KÓLˆFØˆEØˆFØØŸ™¤C¨	Ø(,¨v©ó%7ó 8�áØØœ#˜e›*Ñ$�Ø˜‘�ð ô ˜˜uÕ%rG   )r   )rA   ÚSIZESÚ
READ_SIZESrR   rB   rL   s   `     r   r8   zTestZlibInputStream.test_readc   s~   ø€ Ø�A�rœ: q™=¬*°Q©,ÜœZ¨™\¨1¬Z©<¸©>ð;ˆô ! !‘m¤Z°¡\Ü ¤*¨Q¡,ð0ˆ
ô	&ð ò 	'ˆDØ'ò '�	Ù�d˜IÕ&ñ'ñ	'rG   c                 óN  — t        j                  d«      }t        j                  |«      }t	        |dz   «      }t        |t        |«      «      }|j                  t        |«      «       t        |j                  «       t        |«      «       t        t        |j                  d«       y )NiÒ  s   abbacacar'   )r<   r=   r>   r?   r   r   r@   r5   r   r,   r6   r7   ©rA   rC   rD   rM   rE   s        r   Útest_read_max_lengthz(TestZlibInputStream.test_read_max_length|   s{   € Ü×Ñ Ó%ˆÜŸ-™-¨Ó-ˆÜ# O°kÑ$AÓBÐÜ Ð!2´C¸Ó4HÓIˆà�‰”C˜“IÔÜÐ&×+Ñ+Ó-¬s°?Ó/CÔDä”g˜vŸ{™{¨AÕ.rG   c                 ó*  — t        j                  d«      }t        j                  |«      }|d d t	        |d   dz   dz  g«      z   }t        |«      }t        |t        |«      «      }t        t        j                  |j                  t        |«      «       y ©NrI   r3   r'   éÿ   )r<   r=   r>   r?   Úbytesr   r   r@   r6   Úerrorr5   rV   s        r   Útest_read_bad_checksumz*TestZlibInputStream.test_read_bad_checksum‡   ó…   € Ü×Ñ Ó#ˆÜŸ-™-¨Ó-ˆð +¨3¨BÐ/Ü" _°RÑ%8¸1Ñ%<ÀÑ$CÐ#DÓEñFˆô $ OÓ4ÐÜ Ð!2´C¸Ó4HÓIˆä”d—j‘j &§+¡+¬s°4«yÕ9rG   c                 ó,  — | j                  d«      \  }}}t        ||«      }|j                  d«       d}t        |j	                  «       |«       |j                  d«      }t        ||||dz    «       |j                  dd«       d}t        |j	                  «       |«       |j                  d«      }t        ||||dz    «       |j                  dd	«       d}t        |j	                  «       |«       |j                  d«      }t        ||||dz    «       t        t        |j                  d
d«       t        t        |j                  dd«       t        t        |j                  dd«       |j                  dd«       t        t        |j
                  d«       y )Né   é{   é   iA  r'   iÇ  é   i�  r   rI   r&   r3   i'  é   )	rF   r   r+   r   r,   r5   r6   r7   Ú
ValueError)	rA   rM   rN   rC   rE   ÚpÚd1Úd2Úd3s	            r   Ú	test_seekzTestZlibInputStream.test_seek”   sE  € Ø7;·~±~ÀdÓ7KÑ4ÐÐ.°ä Ð!2Ð4GÓHˆà�‰�CÔØˆÜ�V—[‘[“] AÔ&Ø�[‰[˜‹_ˆÜ�R˜˜a  "¡˜Ô&à�‰�C˜ÔØˆÜ�V—[‘[“] AÔ&Ø�[‰[˜‹_ˆÜ�R˜˜a  "¡˜Ô&à�‰�C˜ÔØˆÜ�V—[‘[“] AÔ&Ø�[‰[˜‹_ˆÜ�R˜˜a  "¡˜Ô&ä”g˜vŸ{™{¨B°Ô2Ü”g˜vŸ{™{¨B°Ô2Ü”j &§+¡+¨q°#Ô6à�‰�E˜1ÔÜ”g˜vŸ{™{¨BÕ/rG   c                 ó*  — t        j                  d«      }t        j                  |«      }|d d t	        |d   dz   dz  g«      z   }t        |«      }t        |t        |«      «      }t        t        j                  |j                  t        |«      «       y rY   )r<   r=   r>   r?   r[   r   r   r@   r6   r\   r+   rV   s        r   Útest_seek_bad_checksumz*TestZlibInputStream.test_seek_bad_checksum²   r^   rG   c                 ó$  — | j                  d«      \  }}}t        ||«      }t        |j                  «        «       |j	                  d«       t        |j                  «        «       |j	                  d«       t        |j                  «       «       y )Nr`   i   )rF   r   r   Úall_data_readr+   )rA   rM   rN   rC   rE   s        r   Útest_all_data_readz&TestZlibInputStream.test_all_data_read¿   sx   € Ø7;·~±~ÀdÓ7KÑ4ÐÐ.°Ü Ð!2Ð4GÓHˆÜ�F×(Ñ(Ó*Ð*Ô+Ø�‰�CÔÜ�F×(Ñ(Ó*Ð*Ô+Ø�‰�DÔÜ�×$Ñ$Ó&Õ'rG   ÚWindows)é   é   zgh-23185)Úreasonc                 ó†  — d}t        j                  dt         j                  ¬«      }t        j                  ||«      }t        |«      }t        |t        dz   k(  «       t        |«      }t        ||«      }t        |j                  «        «       |j                  t        |«      «       t        |j                  «       «       y )Nr*   éøS©Údtyper&   )ÚnpÚarangeÚuint8r>   r?   r@   r   r   r   r   rn   r+   ©rA   ÚCOMPRESSION_LEVELrC   rD   rN   rM   rE   s          r   Útest_all_data_read_overlapz.TestZlibInputStream.test_all_data_read_overlapÈ   sœ   € ð Ðä�y‰y˜¬¯©Ô2ˆÜŸ-™-¨Ð.?Ó@ˆÜ! /Ó2Ðô 	Ð#¤z°A¡~Ñ5Ô6ä# OÓ4ÐÜ Ð!2Ð4GÓHˆÜ�F×(Ñ(Ó*Ð*Ô+Ø�‰”C˜“IÔÜ�×$Ñ$Ó&Õ'rG   c                 óÒ  — d}t        j                  dt         j                  ¬«      }t        j                  ||«      }t        |«      }t        |t        dz   k(  «       |d d t        |d   dz   dz  g«      z   }t        |«      }t        ||«      }t        |j                  «        «       |j                  t        |«      «       t        t        j                  |j                  «       y )Nr*   ru   rv   r&   r3   r'   rZ   )rx   ry   rz   r>   r?   r@   r   r   r[   r   r   rn   r+   r6   r\   r{   s          r   Útest_all_data_read_bad_checksumz3TestZlibInputStream.test_all_data_read_bad_checksumÛ   sÏ   € ð Ðä�y‰y˜¬¯©Ô2ˆÜŸ-™-¨Ð.?Ó@ˆÜ! /Ó2Ðô 	Ð#¤z°A¡~Ñ5Ô6ð +¨3¨BÐ/Ü" _°RÑ%8¸1Ñ%<ÀÑ$CÐ#DÓEñFˆô $ OÓ4ÐÜ Ð!2Ð4GÓHˆÜ�F×(Ñ(Ó*Ð*Ô+Ø�‰”C˜“IÔä”d—j‘j &×"6Ñ"6Õ7rG   N)Ú__name__Ú
__module__Ú__qualname__rF   r8   rW   r]   rj   rl   ro   ÚpytestÚmarkÚskipifÚplatformÚsystemÚsysÚversion_infor}   r   © rG   r   r:   r:   \   s½   „ ò2ò'ò2	/ò:ò0ò<:ò(ð ‡[�[×ÑØˆX�_‰_Ó )Ñ+ÒK°×0@Ñ0@ÀGÑ0KØð ó ñ(óð(ð  ‡[�[×ÑØˆX�_‰_Ó )Ñ+ÒK°×0@Ñ0@ÀGÑ0KØð ó ñ8óñ8rG   r:   ) Ú__doc__r†   r   r<   rˆ   r>   Úior   Útempfiler   Ú
contextlibr   Únumpyrx   Únumpy.testingr   r   rƒ   r   r6   Úscipy.io.matlab._streamsr	   r
   r   r   r   r   r   r#   r1   r8   r:   rŠ   rG   r   ú<module>r’      sk   ðñó Û 	Û Û 
Û å õ Ý %ã ç /Ý *Û ÷*÷ *ð
 ñ
ó ð
ò<ò'ò$8÷4U8ò U8rG   