
    Ugj                     \    d Z ddlmZ ddlZddlZddlZddlm	Z	 ddl
Z G d d          ZdS )zK
Ensure that we can use pathlib.Path objects in all relevant IO functions.
    )PathN)tempdirc                       e Zd Z ej        d                              ej                  Zd Zd Z	d Z
d Zd Zd Zd Zd	 Zd
 Zd Zd ZdS )	TestPaths   c                     t                      5 }t          |          dz  }t          j                            |d| j        i           |                                sJ 	 d d d            d S # 1 swxY w Y   d S Ndata.matdata)r   r   scipyiosavematr   is_file)selftemp_dirpaths      X/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/scipy/io/tests/test_paths.pytest_savematzTestPaths.test_savemat   s    YY 	"(>>J.DHTFDI#6777<<>>!!!!	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	"s   AA--A14A1c                 j   t                      5 }t          |          dz  }t          j                            t          |          d| j        i           t          j                            |          }|d         | j        k                                    sJ 	 d d d            d S # 1 swxY w Y   d S r	   )	r   r   r   r   r   strr   loadmatall)r   r   r   mat_contentss       r   test_loadmatzTestPaths.test_loadmat   s    YY 	=(>>J.DHSYY(;<<< 8++D11L (DI5::<<<<<<	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	=s   BB((B,/B,c                 <   t                      5 }t          |          dz  }t          j                            t          |          d| j        i           t          j                            |          }|d         dk    sJ 	 d d d            d S # 1 swxY w Y   d S )Nr
   r   r   )r   )   r   int64)r   r   r   r   r   r   r   whosmat)r   r   r   contentss       r   test_whosmatzTestPaths.test_whosmat    s    YY 	<(>>J.DHSYY(;<<<x''--HA;";;;;;;	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	<s   A4BBBc                 |    t          t                    j        dz  }t          j                            |           d S )Nzdata/scalar_string.sav)r   __file__parentr   r   readsavr   r   s     r   test_readsavzTestPaths.test_readsav)   s2    H~~$'??    c                    t                      5 }t          j                            t          j                            d                    }t          |          dz  }t          j                            t          |          |           t          j        	                    |          }||k    j
        dk    sJ 	 d d d            d S # 1 swxY w Y   d S )N   data.hbr   )r   r   sparse
csr_matrixeyer   r   hb_writer   hb_readnnzr   r   r   r   data_news        r   test_hb_readzTestPaths.test_hb_read-   s    YY 	/(<**5<+;+;A+>+>??D>>I-DHc$ii...x''--H$)Q.....	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/   B,C		CCc                 ^   t                      5 }t          j                            t          j                            d                    }t          |          dz  }t          j                            ||           |                                sJ 	 d d d            d S # 1 swxY w Y   d S )Nr)   r*   )	r   r   r+   r,   r-   r   r   r.   r   r   r   r   r   s       r   test_hb_writezTestPaths.test_hb_write7   s    YY 	"(<**5<+;+;A+>+>??D>>I-DHdD)))<<>>!!!!		" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	"s   BB""B&)B&c                    t                      5 }t          j                            t          j                            d                    }t          |          dz  }t          j                            t          |          |           t          j        	                    |          }||k    j
        dk    sJ 	 d d d            d S # 1 swxY w Y   d S )Nr)   data.mtxr   )r   r   r+   r,   r-   r   r   mmwriter   mmreadr0   r1   s        r   test_mmio_readzTestPaths.test_mmio_read>   s    YY 	/(<**5<+;+;A+>+>??D>>J.DHSYY---xt,,H$)Q.....	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/r4   c                 0   t                      5 }t          j                            t          j                            d                    }t          |          dz  }t          j                            ||           d d d            d S # 1 swxY w Y   d S )Nr)   r9   )r   r   r+   r,   r-   r   r   r:   r6   s       r   test_mmio_writezTestPaths.test_mmio_writeH   s    YY 	)(<**5<+;+;A+>+>??D>>J.DHT4(((	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)s   A/BBBc                 |    t          t                    j        dz  }t          j                            |           d S )Nzdata/example_1.nc)r   r"   r#   r   r   netcdf_filer%   s     r   test_netcdf_filezTestPaths.test_netcdf_fileN   s2    H~~$'::T"""""r'   c                     t          t                    j        dz  }t          j        j                            |           d S Nz"data/test-8000Hz-le-2ch-1byteu.wav)r   r"   r#   r   r   wavfilereadr%   s     r   test_wavfile_readzTestPaths.test_wavfile_readR   s5    H~~$'KKd#####r'   c                 n   t          t                    j        dz  }t          j        j                            t          |                    \  }}t                      5 }t          |          |j	        z  }t          j        j        
                    |||           d d d            d S # 1 swxY w Y   d S rC   )r   r"   r#   r   r   rD   rE   r   r   namewrite)r   
input_pathrater   r   output_paths         r   test_wavfile_writezTestPaths.test_wavfile_writeV   s    (^^*-QQ
X%**3z??;;
dYY 	<(x..:?:KH"";d;;;	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	< 	<s   >B**B.1B.N)__name__
__module____qualname__nparangeastyper   r   r   r   r    r&   r3   r7   r<   r>   rA   rF   rM    r'   r   r   r      s        29Q<<rx((D" " "= = =< < <  / / /" " "/ / /) ) )# # #$ $ $< < < < <r'   r   )__doc__pathlibr   numpyrQ   scipy.ior   scipy.io.wavfilescipy._lib._tmpdirsr   scipy.sparser   rT   r'   r   <module>r\      s                    ' ' ' ' ' '    O< O< O< O< O< O< O< O< O< O<r'   