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    

	

