
    @wg\                        d dl Z d dlmZ d dlZd dlmZmZ d Z ej                  dd        ej                  d      d               Z	 ej                  dd	       d
        Z
 ej                  dd       d        Z ej                  dd       d        Zd Zd Zd Zej                  j!                  e ddj#                               d        Zd Zd Zd Zd Zd Zy)    N)mock)commasmainc                       t        ddddd      )Nzutf-8s   0x80r      zinvalid start byte)UnicodeDecodeError     O/var/www/horilla/myenv/lib/python3.12/site-packages/qrcode/tests/test_script.pybad_readr   	   s    
Wgq!5I
JJr
   z	os.isattyc                       yNTr	   argss    r   <lambda>r          r
   qrcode.main.QRCode.print_asciic                 @    t        dg       | j                  d       y )NtesttextTtty)r   assert_called_with)mock_print_asciis    r   test_isattyr      s     	*''D'1r
   c                       y)NFr	   r   s    r   r   r      r   r
   c                  J    t        j                  dd       t        dg       y )NPILRequires PILreasonr   pytestimportorskipr   r	   r
   r   
test_pipedr$      s    
n5*r
   c                       yr   r	   r   s    r   r   r      r   r
   c                  `   t        j                  d      5 } t        j                  d      5 }d|j                  j                  _        t        g        |j                  j                  j                  sJ | j                  d       d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   y xY wNr   z	sys.stdinr   Tr   )r   patchbufferreadreturn_valuer   calledr   r   
mock_stdins     r   
test_stdinr/      s    	4	5 :9IZZ$ 	:
2<J""/H$$))0000//D/9		:: :	: 	:: :s#   B$ABB$B!	B$$B-c                       yr   r	   r   s    r   r   r   $   r   r
   c                     t        j                  d      5 } t        j                  d      5 }d|j                  j                  _        t
        |j                  _        t        j                  t              5  t        j                  j                          d d d        t        g        | j                  d       d d d        d d d        y # 1 sw Y   7xY w# 1 sw Y   xY w# 1 sw Y   y xY wr'   )r   r(   r)   r*   r+   r   side_effectr"   raisesr   sysstdinr   r   r-   s     r   !test_stdin_py3_unicodedecodeerrorr6   $   s    	4	5 	:9IZZ$ 	:
2<J""/*2JOO'12 !		 ! H//D/9	:	: 	:
! !		: 	:	: 	:s;   C#A
C6C%C:C#CCC 	C##C,c                  d    t        j                  dd       t        dj                                y )Nr   r   r   ztesttext --optimize 0)r"   r#   r   splitr	   r
   r   test_optimizer9   2   s$    
n5	 	&	&	()r
   c                      t        g d       y )N)r   	--factorysvg)r   r	   r
   r   test_factoryr=   7   s    	)*r
   c                  z    t        j                  t              5  t        g d       d d d        y # 1 sw Y   y xY w)N)r   r;   nope)r"   r3   
SystemExitr   r	   r
   r   test_bad_factoryrA   ;   s,    	z	" 0./0 0 0s   1:argvzqr testtext outputc                  F    t        j                  dd       t                y )Nr   r   r   r!   r	   r
   r   test_sys_argvrD   @   s    
n5Fr
   c                 f    t        j                  dd       t        ddt        | dz        g       y )Nr   r   r   r   z--outputztest.png)r"   r#   r   str)tmp_paths    r   test_outputrH   F   s+    
n5*j#h&;"<	=>r
   c                     t        j                  dd       t        j                  t              5  t	        dj                                d d d        d| j                         d   v sJ y # 1 sw Y   !xY w)Nr   r   r   z,testtext --factory pil --factory-drawer nopez*The selected factory has no drawer aliasesr   )r"   r#   r3   r@   r   r8   
readouterrcapsyss    r   test_factory_drawer_nonerM   K   se    
n5	z	" E;AACDE76;L;L;Nq;QQQQE Es   A++A4c                     t        j                  t              5  t        dj	                                d d d        d| j                         d   v sJ y # 1 sw Y   !xY w)Nz-testtext --factory svg --factory-drawer sobadzsobad factory drawer not foundr   )r"   r3   r@   r   r8   rJ   rK   s    r   test_factory_drawer_badrO   R   sU    	z	" F<BBDEF+v/@/@/B1/EEEEF Fs   AAc                 6    t        dj                                y )Nz.testtext --factory svg --factory-drawer circle)r   r8   rK   s    r   test_factory_drawerrQ   X   s    	9	?	?	ABr
   c                      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	k(  sJ y )
N AABzA or BABCz	A, B or Cand)joinerz
A, B and C)r   r	   r
   r   test_commasrY   \   sa    ":3%=C$<8###%=K'''%&,666r
   )r4   unittestr   r"   qrcode.console_scriptsr   r   r   r(   r   r$   r/   r6   r9   r=   rA   objectr8   rD   rH   rM   rO   rQ   rY   r	   r
   r   <module>r]      s   
   /K K+,,-2 . -2
 K,- .
 K+,: -: K+,
: -
:*
+0
 3 4 : : <= >
?
RFC7r
   