o
    Ûäh\  ã                   @   sþ   d dl Z d dlmZ d dlZd dlmZmZ dd„ Ze ddd„ ¡e d	¡d
d„ ƒƒZ	e ddd„ ¡dd„ ƒZ
e ddd„ ¡dd„ ƒZe ddd„ ¡dd„ ƒZdd„ Zdd„ Zdd„ Zej e dd ¡ ¡dd„ ƒZdd „ Zd!d"„ Zd#d$„ Zd%d&„ Zd'd(„ ZdS ))é    N)Úmock)ÚcommasÚmainc                   C   s   t dddddƒ‚)Nzutf-8s   0x80r   é   zinvalid start byte)ÚUnicodeDecodeError© r   r   úK/var/www/html/venv/lib/python3.10/site-packages/qrcode/tests/test_script.pyÚbad_read	   ó   r	   z	os.isattyc                  G   ó   dS ©NTr   ©Úargsr   r   r   Ú<lambda>   ó    r   úqrcode.main.QRCode.print_asciic                 C   s   t dgƒ | jdd� d S )NÚtesttextT©Útty)r   Úassert_called_with)Úmock_print_asciir   r   r   Útest_isatty   s   
r   c                  G   r   )NFr   r   r   r   r   r      r   c                   C   s   t jddd� tdgƒ d S )NÚPILúRequires PIL©Úreasonr   ©ÚpytestÚimportorskipr   r   r   r   r   Ú
test_piped   s   r   c                  G   r   r   r   r   r   r   r   r      r   c               	   C   s–   t  d¡�<} t  d¡�}d|jj_tg ƒ |jjjsJ ‚| jdd� W d   ƒ n1 s,w   Y  W d   ƒ d S W d   ƒ d S 1 sDw   Y  d S ©Nr   z	sys.stdinr   Tr   )r   ÚpatchÚbufferÚreadÚreturn_valuer   Úcalledr   ©r   Ú
mock_stdinr   r   r   Ú
test_stdin   s   
üÿ"ÿr(   c                  G   r   r   r   r   r   r   r   r   $   r   c               
   C   sÄ   t  d¡�S} t  d¡�5}d|jj_t|j_t t	¡� t
j ¡  W d   ƒ n1 s*w   Y  tg ƒ | jdd� W d   ƒ n1 sCw   Y  W d   ƒ d S W d   ƒ d S 1 s[w   Y  d S r    )r   r!   r"   r#   r$   r	   Úside_effectr   Úraisesr   ÚsysÚstdinr   r   r&   r   r   r   Ú!test_stdin_py3_unicodedecodeerror$   s   
ÿøÿ"ÿr-   c                   C   s   t jddd� td ¡ ƒ d S )Nr   r   r   ztesttext --optimize 0)r   r   r   Úsplitr   r   r   r   Útest_optimize2   s   r/   c                   C   s   t g d¢ƒ d S )N)r   ú	--factoryÚsvg)r   r   r   r   r   Útest_factory7   r
   r2   c                   C   s<   t  t¡� tg d¢ƒ W d   ƒ d S 1 sw   Y  d S )N)r   r0   Únope)r   r*   Ú
SystemExitr   r   r   r   r   Útest_bad_factory;   s   "ÿr5   Úargvzqr testtext outputc                   C   s   t jddd� tƒ  d S )Nr   r   r   r   r   r   r   r   Útest_sys_argv@   s   
r7   c                 C   s(   t jddd� tddt| d ƒgƒ d S )Nr   r   r   r   z--outputztest.png)r   r   r   Ústr)Útmp_pathr   r   r   Útest_outputF   s   r:   c                 C   s\   t jddd� t  t¡� td ¡ ƒ W d   ƒ n1 sw   Y  d|  ¡ d v s,J ‚d S )Nr   r   r   z,testtext --factory pil --factory-drawer nopez*The selected factory has no drawer aliasesr   )r   r   r*   r4   r   r.   Ú
readouterr©Úcapsysr   r   r   Útest_factory_drawer_noneK   s
   ÿr>   c                 C   sN   t  t¡� td ¡ ƒ W d   ƒ n1 sw   Y  d|  ¡ d v s%J ‚d S )Nz-testtext --factory svg --factory-drawer sobadzsobad factory drawer not foundr   )r   r*   r4   r   r.   r;   r<   r   r   r   Útest_factory_drawer_badR   s   ÿr?   c                 C   s   t d ¡ ƒ d S )Nz.testtext --factory svg --factory-drawer circle)r   r.   r<   r   r   r   Útest_factory_drawerX   r
   r@   c                   C   sZ   t g ƒdksJ ‚t dgƒdksJ ‚t dƒdksJ ‚t dƒdks!J ‚t ddd�d	ks+J ‚d S )
NÚ ÚAÚABzA or BÚABCz	A, B or CÚand)Újoinerz
A, B and C)r   r   r   r   r   Útest_commas\   s
   rG   )r+   Úunittestr   r   Úqrcode.console_scriptsr   r   r	   r!   r   r   r(   r-   r/   r2   r5   Úobjectr.   r7   r:   r>   r?   r@   rG   r   r   r   r   Ú<module>   s0    

	

