
    ijd                     @    d dl Zd dlmc mZ d dlZd dlmZ d Z	d Z
dS )    N)probe_media_duration_secondsc                     g fd} t          d|           }d}||k    }|st          j        d|fd||f          dt          j                    v st          j        |          rt          j        |          ndt          j        |          dz  }d	d
|iz  }t          t          j        |                    d x}}g dg}|k    }|st          j        d|fd|f          dt          j                    v st          j                  rt          j                  ndt          j        |          dz  }d	d
|iz  }t          t          j        |                    d x}}d S )Nc                ^                         |            t          j        | ddd          S )Nr   z
29.112000
 stdoutstderr)append
subprocessCompletedProcess)commandcapture_outputtextcheckcallss       P/home/agent/jarvis_runtime/autoshortsbot/AutoShortsBot/tests/test_audio_probe.pyfake_runnerzLtest_probe_media_duration_seconds_parses_ffprobe_output.<locals>.fake_runner	   s0    W*7AmTVWWWW    	voice.mp3runnerg&1=@)==)z%(py0)s == %(py3)sduration)py0py3zassert %(py5)spy5)ffprobez-verrorz-show_entrieszformat=durationz-ofz"default=noprint_wrappers=1:nokey=1r   r   )	r   
@pytest_ar_call_reprcompare@py_builtinslocals_should_repr_global_name	_safereprAssertionError_format_explanation)r   r   @py_assert2@py_assert1@py_format4@py_format6r   s         @r   7test_probe_media_duration_seconds_parses_ffprobe_outputr+      sO   EX X X X X ,KLLLH8v8v88v	 	 	 	 	5 	 	 	 	 	 		 	 	 	5 	 	 	 	 	 	 	 	 	 	 	  	 	 	 	  	 	 	 	 		 	 	 	 	 	 	 	 	 	 	 	 	 	 		 	 	 	 	 	 	 	 	 	 	 	r   c                     d } 	 t          d|            t          d          # t          $ r}d}t          |          }||v }|st	          j        d|fd||f          t	          j        |          dt          j                    v st	          j	        t                    rt	          j        t                    ndd	t          j                    v st	          j	        |          rt	          j        |          nd	t	          j        |          d
z  }dd|iz  }t          t	          j
        |                    d x}x}}Y d }~d S d }~ww xY w)Nc                2    t          j        | ddd          S )Nr   znot-a-duration
r   r   )r   r   )r   r   r   r   s       r   r   zMtest_probe_media_duration_seconds_rejects_invalid_output.<locals>.fake_runner   s    *7A>PY[\\\\r   r   r   zexpected RuntimeErrorzcould not parse media duration)in)z0%(py1)s in %(py6)s
{%(py6)s = %(py3)s(%(py4)s)
}strexc)py1r   py4py6zassert %(py8)spy8)r   r%   RuntimeErrorr/   r   r    r$   r!   r"   r#   r&   )r   r0   @py_assert0@py_assert5r'   @py_format7@py_format9s          r   8test_probe_media_duration_seconds_rejects_invalid_outputr:      s   ] ] ]6$[EEEE 4555  < < </;3s88;/8;;;;;;;;;;/8;;;;;/;;;;;;;;;;;3;;;;;3;;;;;;;;;;;;;s;;;;;s;;;;;;8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<s   % E
DEE
)builtinsr!   _pytest.assertion.rewrite	assertionrewriter   r   autoshorts.audio.prober   r+   r:    r   r   <module>rA      sf                      ? ? ? ? ? ?  ,	6 	6 	6 	6 	6r   