U
    f»{jJ  ã                   @   s´   d Z ddlZddlZddlmZ ddlmZ ddlmZ ee 	e 
¡ ¡ƒZejd Zed Zed Zed	 Zeed
 ƒZej d¡ej deeef¡dd„ ƒƒZdd„ Zdd„ ZdS )zTest reading BESA fileformats.é    N)ÚPath)Úread_evoked_besa)Úread_custom_montageÚdatazsimulation.avrzsimulation_oldstyle.avrzsimulation.mulzsimulation.elpz&ignore:Fiducial point nasion not foundÚfnamec                 C   s‚   t | ƒ}t|jƒt|jƒ  kr(dks.n t‚|jd dks@t‚|jdksNt‚t|jƒdks`t‚|jtjkspt‚|j	dks~t‚dS )z&Test reading MESA .avr and .mul files.é!   ÚsfreqéÈ   gš™™™™™¹¿Z
simulationN)
r   ÚlenÚch_namesr   ÚAssertionErrorÚinfoÚtminÚtimesÚmontageÚcomment)r   Úev© r   úZ/var/www/html/bwave/python/venv/lib/python3.8/site-packages/mne/io/besa/tests/test_besa.pyÚtest_read_evoked_besa   s    &r   c              	   C   sD  t | › d�dƒ�}| d¡ W 5 Q R X t| › d�ƒ}|jdddgksHt‚t | › d�dƒ�}| d¡ W 5 Q R X t| › d�ƒ}t|jƒt|jƒ  krœdks¢n t‚|jd	 d
ks´t‚|jdksÂt‚t|j	ƒdksÔt‚|jdgksät‚|j
dksòt‚t | › d�dƒ�}| d¡ W 5 Q R X tjtdd�� t| › d�ƒ}W 5 Q R X dS )z(Test reading incomplete BESA .avr files.z/missing.avrÚwz2Npts= 1  TSB= 0  SB= 1.00  SC= 500.0  DI= 5
0
1
2
ZCH01ZCH02ZCH03zDI= 5
0
é   r   r	   r   Ú z'Npts= 1  TSB= 0  SB= 1.00  SC= 500.0
0
zNo "DI" field present©ÚmatchN)ÚopenÚwriter   r   r   r
   r   r   r   r   r   ÚpytestÚraisesÚRuntimeError©Ztmp_pathÚfr   r   r   r   Ú$test_read_evoked_besa_avr_incomplete   s"    &r"   c              	   C   sü   t | › d�dƒ�}| d¡ W 5 Q R X t| › d�ƒ}t|jƒt|jƒ  krTdksZn t‚|jd dkslt‚|jdkszt‚t|j	ƒdksŒt‚|jdgksœt‚|j
d	ksªt‚t | › d�dƒ�}| d
¡ W 5 Q R X tjtdd�� t| › d�ƒ}W 5 Q R X dS )z(Test reading incomplete BESA .mul files.z/missing.mulr   zSamplingInterval[ms]= 5
CH1
0
r   r   r	   r   ZCH1r   z TimePoints= 1 Channels= 1
CH1
0
zNo "SamplingInterval\[ms\]"r   N)r   r   r   r
   r   r   r   r   r   r   r   r   r   r   r    r   r   r   Ú$test_read_evoked_besa_mul_incomplete9   s    &r#   )Ú__doc__Úinspectr   Úpathlibr   Zmne.ior   Zmne.channelsr   ÚgetfileÚcurrentframeÚFILEÚparentÚdata_dirZavr_fileZavr_file_oldstyleZmul_filer   ÚmarkÚfilterwarningsZparametrizer   r"   r#   r   r   r   r   Ú<module>   s    

