
    1hD                     ~    S SK r S SKrS SKrS SKr " S S\R
                  5      r\S:X  a  \R                  " 5         gg)    Nc                      \ rS rSrS rS r\R                  " \R                  R                  S5      S5      S 5       r\R                  " S\R                  ;   S5      S	 5       r\R                  " S
\R                  ;   S5      S 5       r\R                  " S
\R                  ;   S5      S 5       r\R                  " S
\R                  ;   S5      S 5       r\R                  " S\R                  ;   =(       a    S\R                  ;   S5      S 5       r\R                  " S\R                  ;   =(       a    S\R                  ;   S5      S 5       r\R                  " S\R                  ;   =(       a    S\R                  ;   S5      S 5       r\R                  " S\R                  ;   =(       a    S\R                  ;   S5      S 5       rSrg)TestRecognition   c                 V   [         R                  R                  [         R                  R                  [         R                  R	                  [
        5      5      S5      U l        [         R                  R                  [         R                  R                  [         R                  R	                  [
        5      5      S5      U l        [         R                  R                  [         R                  R                  [         R                  R	                  [
        5      5      S5      U l        g )Nzenglish.wavzfrench.aiffzchinese.flac)	ospathjoindirnamerealpath__file__AUDIO_FILE_ENAUDIO_FILE_FRAUDIO_FILE_ZH)selfs    N/var/www/auris/envauris/lib/python3.13/site-packages/tests/test_recognition.pysetUpTestRecognition.setUp   s    WW\\"''//"'':J:J8:T*UWdeWW\\"''//"'':J:J8:T*UWdeWW\\"''//"'':J:J8:T*UWef    c                 :   [         R                  " 5       n[        [        U5      5      nU R	                  UR
                  S5        U R                  UR                  5        U R	                  UR                  S5        U R	                  UR                  S5        U R	                  UR                  S5        U R                  UR                  5        U R	                  UR                  S5        U R	                  UR                  S5        U R                  SU;   5        g )Ni,  g333333?g      ?g?g333333?g      ?recognize_google)sr
RecognizersetdirassertEqualenergy_threshold
assertTruedynamic_energy_threshold!dynamic_energy_adjustment_dampingdynamic_energy_ratiopause_thresholdassertIsNoneoperation_timeoutphrase_thresholdnon_speaking_duration)r   r
attributess      r   test_recognizer_attributes*TestRecognition.test_recognizer_attributes   s    MMOQ[
++S1223<<dC//5**C0!--.++S100#6*j89r   winzskip on Windowsc                     [         R                  R                  U R                  5      n[         R                  " 5       nU R                  UR                  U5      S5        g )None two three)r   	AudioData	from_filer   r   r   recognize_sphinxr   audior&   s      r   test_sphinx_english#TestRecognition.test_sphinx_english    sB    &&t'9'9:MMO++E2ODr   
WIT_AI_KEYzFrequires Wit.ai key to be specified in WIT_AI_KEY environment variablec                     [         R                  R                  U R                  5      n[         R                  " 5       nU R                  UR                  U[        R                  S   S9S5        g )Nr4   keyr,   )	r   r-   r.   r   r   r   recognize_witr   environr0   s      r   test_wit_english TestRecognition.test_wit_english&   sM    &&t'9'9:MMOBJJ|4LM_r   BING_KEYz^requires Microsoft Bing Voice Recognition key to be specified in BING_KEY environment variablec                     [         R                  R                  U R                  5      n[         R                  " 5       nU R                  UR                  U[        R                  S   S9S5        g )Nr<   r6   z123.)	r   r-   r.   r   r   r   recognize_bingr   r9   r0   s      r   test_bing_english!TestRecognition.test_bing_english,   sP    &&t'9'9:MMO))%RZZ
5K)LfUr   c                     [         R                  R                  U R                  5      n[         R                  " 5       nU R                  UR                  U[        R                  S   SS9S5        g )Nr<   fr-FRr7   languageu   Essaye la dictée numéro un.)	r   r-   r.   r   r   r   r>   r   r9   r0   s      r   test_bing_french TestRecognition.test_bing_french2   s[    &&t'9'9:MMO))%RZZ
5KV])^  aA  	Br   c                     [         R                  R                  U R                  5      n[         R                  " 5       nU R                  UR                  U[        R                  S   SS9S5        g )Nr<   zh-CNrC   u   砸自己的脚。)	r   r-   r.   r   r   r   r>   r   r9   r0   s      r   test_bing_chinese!TestRecognition.test_bing_chinese8   sT    &&t'9'9:MMO))%RZZ
5KV])^`uvr   HOUNDIFY_CLIENT_IDHOUNDIFY_CLIENT_KEYz~requires Houndify client ID and client key to be specified in HOUNDIFY_CLIENT_ID and HOUNDIFY_CLIENT_KEY environment variablesc                    [         R                  R                  U R                  5      n[         R                  " 5       nU R                  UR                  U[        R                  S   [        R                  S   S9S5        g )NrK   rL   )	client_id
client_keyr,   )	r   r-   r.   r   r   r   recognize_houndifyr   r9   r0   s      r   test_houndify_english%TestRecognition.test_houndify_english>   ss    &&t'9'9:MMO--erzzJ^?_lnlvlv  xM  mN-  O  Q`  	ar   IBM_USERNAMEIBM_PASSWORDzxrequires IBM Speech to Text username and password to be specified in IBM_USERNAME and IBM_PASSWORD environment variablesc                    [         R                  R                  U R                  5      n[         R                  " 5       nU R                  UR                  U[        R                  S   [        R                  S   S9S5        g )NrS   rT   )usernamepasswordzone two three )	r   r-   r.   r   r   r   recognize_ibmr   r9   r0   s      r   test_ibm_english TestRecognition.test_ibm_englishD   sd    &&t'9'9:MMON9S^`^h^hiw^xy  |L  	Mr   c           	         [         R                  R                  U R                  5      n[         R                  " 5       nU R                  UR                  U[        R                  S   [        R                  S   SS9S5        g )NrS   rT   rB   rV   rW   rD   u   si la dictée numéro un )	r   r-   r.   r   r   r   rX   r   r9   r0   s      r   test_ibm_frenchTestRecognition.test_ibm_frenchJ   sn    &&t'9'9:MMON9S^`^h^hiw^x  DK  L  Nj  	kr   c           	         [         R                  R                  U R                  5      n[         R                  " 5       nU R                  UR                  U[        R                  S   [        R                  S   SS9S5        g )NrS   rT   rH   r\   u   砸 自己 的 脚 )	r   r-   r.   r   r   r   rX   r   r9   r0   s      r   test_ibm_chinese TestRecognition.test_ibm_chineseP   sn    &&t'9'9:MMON9S^`^h^hiw^x  DK  L  Nd  	er   )r   r   r   N)__name__
__module____qualname____firstlineno__r   r(   unittestskipIfsysplatform
startswithr2   
skipUnlessr   r9   r:   r?   rE   rI   rQ   rY   r]   r`   __static_attributes__ r   r   r   r      s   g
: __S\\,,U35FGE HE
 35}~` `
 rzz1  4T  UV UV
 rzz1  4T  UB UB
 rzz1  4T  Uw Uw
 -;c@UY[YcYc@c  ff  ga ga
 2::5V.BJJ:V  YS  TM TM
 2::5V.BJJ:V  YS  Tk Tk
 2::5V.BJJ:V  YS  Te Ter   r   __main__)	r   rh   rf   speech_recognitionr   TestCaser   rb   mainrm   r   r   <module>rr      sB    
 
  Ieh'' IeX zMMO r   