Ë
    F·j™  ã                   óª  — 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Zd dlm	Z	  ej                  d«      Zg e_        	 d$d„Zd$d„Zd„ Zd	„ Zd
„ Zd„ Ze j&                  j(                  d„ «       Ze j&                  j(                  d„ «       Ze j&                  j(                  d„ «       Ze j&                  j(                  d„ «       Zej2                  j5                  e«      ZdZdZdZej2                  jA                  edd«      Z!dZ"ej2                  jA                  edd«      Z#	 d„ Z$e j&                  j(                  d„ «       Z%e j&                  j(                  d„ «       Z&e j&                  j(                  d„ «       Z'e j&                  j(                  d„ «       Z(e j&                  j(                  d„ «       Z)e j&                  j(                  d„ «       Z*e j&                  j(                  d„ «       Z+e j&                  j(                  d„ «       Z,e j&                  j(                  d „ «       Z-e j&                  j(                  d!„ «       Z.e/d"k(  r e j`                  d#eg«       yy)%é    N)Ú	CliRunner)Útts_cli)Ú
LogCaptureÚgttsc                 ó@   — t        «       j                  t        | |«      S ©N©r   Úinvoker   ©ÚargsÚinputs     úa/var/www/html/ai-video-generator/backend/venv/lib/python3.12/site-packages/gtts/tests/test_cli.pyÚrunnerr      s   € Ü‹;×Ñœg t¨UÓ3Ð3ó    c                 óH   — t        «       j                  t        | dgz   |«      S )Nz--debugr	   r   s     r   Úrunner_debugr      s    € Ü‹;×Ñœg t¨y¨kÑ'9¸5ÓAÐAr   c                  ó\   — t        g «      } d| j                  v sJ ‚| j                  dk7  sJ ‚y)z2One of <test> (arg) and <file> <opt> should be setz<file> requiredr   N©r   ÚoutputÚ	exit_code©Úresults    r   Útest_text_no_text_or_filer      s2   € ä˜"Ó€Fà §¡Ñ-Ð-Ð-Ø×Ñ˜qÒ Ð Ñ r   c                 óž   — | dz  }|j                  «        t        dt        |«      dg«      }d|j                  v sJ ‚|j                  dk7  sJ ‚y)z8<test> (arg) and <file> <opt> should not be set togetherztest_and_file.txtú--fileÚtestz<file> can't be used togetherr   N©Útouchr   Ústrr   r   ©Útmp_pathÚfilenamer   s      r   Útest_text_text_and_filer#   &   sR   € àÐ-Ñ-€HØ‡N�NÔä˜8¤S¨£]°FÐ;Ó<€Fà*¨f¯m©mÑ;Ð;Ð;Ø×Ñ˜qÒ Ð Ñ r   c                 óœ   — | dz  }|j                  «        t        dt        |«      g«      }d|j                  v sJ ‚|j                  dk7  sJ ‚y)z%Exit on no text to speak (via <file>)ztext_empty.txtr   zNo text to speakr   Nr   r    s      r   Útest_text_emptyr%   1   sP   € àÐ*Ñ*€HØ‡N�NÔä˜8¤S¨£]Ð3Ó4€Fà §¡Ñ.Ð.Ð.Ø×Ñ˜qÒ Ð Ñ r   c                  ó`   — t        g d¢«      } d| j                  v sJ ‚| j                  dk7  sJ ‚y)z<file> should exist)r   znotexist.txtr   zNo such file or directoryr   Nr   r   s    r   Útest_file_not_existsr'   =   s3   € äÒ<Ó=€Fà&¨&¯-©-Ñ7Ð7Ð7Ø×Ñ˜qÒ Ð Ñ r   c                  ó‚   — t        dg«      } t        j                  d| j                  «      sJ ‚| j                  dk(  sJ ‚y)z.Option <all> should return a list of languagesz--allz&^(?:\s{2}(\w{2}|\w{2}-\w{2}): .+\n?)+$r   N)r   ÚreÚmatchr   r   r   s    r   Útest_allr+   F   s?   € ô �W�IÓ€Fô
 �8‰8Ð=¸v¿}¹}ÔMÐMÐMØ×Ñ˜qÒ Ð Ñ r   c                  ó`   — t        g d¢«      } d| j                  v sJ ‚| j                  dk7  sJ ‚y)z&Invalid <lang> should display an error)ú--langÚxxr   z&xx' not in list of supported languagesr   N)r   r   r   r   s    r   Útest_lang_not_validr/   S   s5   € ô Ò,Ó-€Fà3°v·}±}ÑDÐDÐDØ×Ñ˜qÒ Ð Ñ r   c                  óÌ   — t        «       5 } t        g d¢«      }t        | «      }ddd«       dv sJ ‚d|v sJ ‚dj                  v sJ ‚|j                  dk7  sJ ‚y# 1 sw Y   Œ7xY w)zIInvalid <lang> (with <nocheck>) should display an error message from gtts)r-   r.   ú	--nocheckr   Nzlang: xxúlang_check: FalsezUnsupported language 'xx'r   )r   r   r   r   r   ©Úlcr   Úlogs      r   Útest_lang_nocheckr6   \   sx   € ô 
‹ð ˜ÜÒCÓDˆä�"‹gˆ÷ð
 ˜ÑÐÐØ #Ñ%Ð%Ð%Ø&¨&¯-©-Ñ7Ð7Ð7Ø×Ñ˜qÒ Ð Ñ ÷ð ús   ‹AÁA#c                  óÐ   — t        «       5 } t        g d¢«      }t        | «      }ddd«       dv sJ ‚d|v sJ ‚d|v sJ ‚d|v sJ ‚d|v sJ ‚j                  dk(  sJ ‚y# 1 sw Y   Œ9xY w)	z@Options should set gTTS instance arguments (read from debug log))r-   Úfrz--tldÚesz--slowr1   r   Nzlang: frztld: esr2   z
slow: Truez
text: testr   )r   r   r   r   r3   s      r   Útest_params_setr:   k   s”   € ô 
‹ð ˜ÜÚJó
ˆô �"‹gˆ÷ð ˜ÑÐÐØ˜ÑÐÐØ #Ñ%Ð%Ð%Ø˜3ÑÐÐØ˜3ÑÐÐØ×Ñ˜qÒ Ð Ñ ÷ð ús   ‹AÁA%zstdin
test
123uP   ä½ å�ƒé¥­äº†å�—ï¼Ÿ
ä½ æœ€å–œæ¬¢å“ªéƒ¨ç”µå½±ï¼Ÿ
æˆ‘é¥¿äº†ï¼Œæˆ‘è¦�åŽ»å�šé¥­äº†ã€‚z¼Can you make pink a little more pinkish can you make pink a little more pinkish, nor can you make the font bigger?
How much will it cost the website doesn't have the theme i was going for.Úinput_filesztest_cli_test_ascii.txtuç   è¿™æ˜¯ä¸€ä¸ªä¸‰å²�çš„å°�å­©
åœ¨è®²è¿°å¥¹ä»Žä¸€ç³»åˆ—ç…§ç‰‡é‡Œçœ‹åˆ°çš„ä¸œè¥¿ã€‚
å¯¹è¿™ä¸ªä¸–ç•Œï¼Œ å¥¹ä¹Ÿè®¸è¿˜æœ‰å¾ˆå¤šè¦�å­¦çš„ä¸œè¥¿ï¼Œ
ä½†åœ¨ä¸€ä¸ªé‡�è¦�çš„ä»»åŠ¡ä¸Šï¼Œ å¥¹å·²ç»�æ˜¯ä¸“å®¶äº†ï¼š
åŽ»ç�†è§£å¥¹æ‰€çœ‹åˆ°çš„ä¸œè¥¿ã€‚ztest_cli_test_utf8.txtc                 ó†   — | j                   sydj                  | j                  «       D �cg c]  }d|z  ‘Œ	 c}«      S c c}w )NzNo logging capturedú
z
%s %s
  %s)ÚrecordsÚjoinÚactual)r4   Úrs     r   Úlogcapture_strrB       s4   € Ø�:Š:Ø$à�9‰9°"·)±)³+Ö>¨Q�n qÓ(Ò>Ó?Ð?ùÒ>s   «>c                  ó¶   — t        «       5 } t        dgt        «      }t        | «      }d d d «       dt        z  v sJ ‚j                  dk(  sJ ‚y # 1 sw Y   Œ(xY w©Nú-útext: %sr   ©r   r   Ú	textstdinrB   r   r3   s      r   Útest_stdin_textrI   §   s_   € ä	‹ð !˜Ü˜s˜e¤YÓ/ˆÜ˜RÓ ˆ÷!ð œ	Ñ! SÑ(Ð(Ð(Ø×Ñ˜qÒ Ð Ñ ÷!ð !úó   ‹AÁAc                  ó¶   — t        «       5 } t        dgt        «      }t        | «      }d d d «       dt        z  v sJ ‚j                  dk(  sJ ‚y # 1 sw Y   Œ(xY wrD   ©r   r   Útextstdin_unicoderB   r   r3   s      r   Útest_stdin_text_unicoderN   ±   sa   € ä	‹ð !˜Ü˜s˜eÔ%6Ó7ˆÜ˜RÓ ˆ÷!ð Ô)Ñ)¨SÑ0Ð0Ð0Ø×Ñ˜qÒ Ð Ñ ÷!ð !úrJ   c                  ó¸   — t        «       5 } t        ddgt        «      }t        | «      }d d d «       dt        z  v sJ ‚j                  dk(  sJ ‚y # 1 sw Y   Œ(xY w©Nr   rE   rF   r   rG   r3   s      r   Útest_stdin_filerQ   »   sa   € ä	‹ð !˜Ü˜x¨˜o¬yÓ9ˆÜ˜RÓ ˆ÷!ð œ	Ñ! SÑ(Ð(Ð(Ø×Ñ˜qÒ Ð Ñ ÷!ð !úó   ‹AÁAc                  ó¸   — t        «       5 } t        ddgt        «      }t        | «      }d d d «       dt        z  v sJ ‚j                  dk(  sJ ‚y # 1 sw Y   Œ(xY wrP   rL   r3   s      r   Útest_stdin_file_unicoderT   Å   sc   € ä	‹ð !˜Ü˜x¨˜oÔ/@ÓAˆÜ˜RÓ ˆ÷!ð Ô)Ñ)¨SÑ0Ð0Ð0Ø×Ñ˜qÒ Ð Ñ ÷!ð !úrR   c                  ó´   — t        «       5 } t        t        g«      }t        | «      }d d d «       dt        z  v sJ ‚j                  dk(  sJ ‚y # 1 sw Y   Œ(xY w©NrF   r   )r   r   ÚtextrB   r   r3   s      r   Ú	test_textrX   Ï   s]   € ä	‹ð !˜Üœt˜fÓ%ˆÜ˜RÓ ˆ÷!ð œÑ Ñ#Ð#Ð#Ø×Ñ˜qÒ Ð Ñ ÷!ð !úó   ‹AÁAc                  ó´   — t        «       5 } t        t        g«      }t        | «      }d d d «       dt        z  v sJ ‚j                  dk(  sJ ‚y # 1 sw Y   Œ(xY wrV   )r   r   Útext_unicoderB   r   r3   s      r   Útest_text_unicoder\   Ù   s]   € ä	‹ð !˜Üœ|˜nÓ-ˆÜ˜RÓ ˆ÷!ð œÑ$¨Ñ+Ð+Ð+Ø×Ñ˜qÒ Ð Ñ ÷!ð !úrY   c                  ó¶   — t        «       5 } t        dt        g«      }t        | «      }d d d «       dt        z  v sJ ‚j
                  dk(  sJ ‚y # 1 sw Y   Œ(xY w©Nr   rF   r   )r   r   Útextfile_asciirB   rW   r   r3   s      r   Útest_file_asciir`   ã   s`   € ä	‹ð !˜Ü˜x¬Ð8Ó9ˆÜ˜RÓ ˆ÷!ð œÑ Ñ#Ð#Ð#Ø×Ñ˜qÒ Ð Ñ ÷!ð !úrJ   c                  ó¶   — t        «       5 } t        dt        g«      }t        | «      }d d d «       dt        z  v sJ ‚j
                  dk(  sJ ‚y # 1 sw Y   Œ(xY wr^   )r   r   Útextfile_utf8rB   r[   r   r3   s      r   Útest_file_utf8rc   í   s`   € ä	‹ð !˜Ü˜x¬Ð7Ó8ˆÜ˜RÓ ˆ÷!ð œÑ$¨Ñ+Ð+Ð+Ø×Ñ˜qÒ Ð Ñ ÷!ð !úrJ   c                  ó>   — t        dg«      } | j                  dk(  sJ ‚y )Nr   r   )r   r   r   s    r   Útest_stdoutre   ÷   s$   € ä�V�HÓ€Fð ×Ñ˜qÒ Ð Ñ r   c                 óœ   — | dz  }t        ddt        |«      g«      }|j                  «       j                  dkD  sJ ‚|j                  dk(  sJ ‚y )Nzout.mp3r   z--outputiÐ  r   )r   r   ÚstatÚst_sizer   r    s      r   Ú	test_fileri      sQ   € à˜)Ñ#€Hä�V˜Z¬¨X«Ð7Ó8€Fð �=‰=‹?×"Ñ" TÒ)Ð)Ð)Ø×Ñ˜qÒ Ð Ñ r   Ú__main__z-xr   )1Úpytestr)   ÚosÚclick.testingr   Úgtts.clir   ÚloggingÚtestfixturesr   Ú	getLoggerÚloggerÚhandlersr   r   r   r#   r%   r'   ÚmarkÚnetr+   r/   r6   r:   ÚpathÚdirnameÚ__file__ÚpwdrH   rM   rW   r?   r_   r[   rb   rB   rI   rN   rQ   rT   rX   r\   r`   rc   re   ri   Ú__name__Úmain© r   r   ú<module>r}      sr  ðã Û 	Û 	Ý #Ý ó
 Ý #à	ˆ×	Ñ	˜6Ó	"€Ø€„ð !ó4óBò
!ò!ò!ò!ð ‡�‡�ñ!ó ð!ð ‡�‡�ñ!ó ð!ð ‡�‡�ñ
!ó ð
!ð ‡�‡�ñ!ó ð!ð$ 	‡g�g‡o�o�hÓ€ð€	ð
%Ð ð
M€ð —‘—‘˜c =Ð2KÓL€ð%€ð —‘—‘˜S -Ð1IÓJ€ðò@ð ‡�‡�ñ!ó ð!ð ‡�‡�ñ!ó ð!ð ‡�‡�ñ!ó ð!ð ‡�‡�ñ!ó ð!ð ‡�‡�ñ!ó ð!ð ‡�‡�ñ!ó ð!ð ‡�‡�ñ!ó ð!ð ‡�‡�ñ!ó ð!ð ‡�‡�ñ!ó ð!ð ‡�‡�ñ!ó ð!ð ˆzÒØ€F‡K�K��xÐ Õ!ð r   