
    
g                        d dl Z d dlZd dlZd dlZd dlmZmZmZmZ  ej	        dd          Z
e
rd dlmZ d dlmZmZ d Zej                            d	g d
          d             Zd Zd Zd Zd Zd Zej                            dej        ej        ej        ej        ej        ej        g          d             Zej                            d ej                      ej         ee           ej         de           ej!        eee           ej"        eee           ej#        eee           ej$        eee           ej%        ee
&                    ddd                    g          d             Z'd Z(d  Z)dS )!    N)BLACKREDUNICODE_TEXTWHITEz	PIL.ImagezPIL is not installed)reason)StyledPilImage)
colormasksmoduledrawersc                  0   t          j                    } |                     t                     |                                 }|                    t          j                               t          |	                                t          j
                  sJ d S )N)qrcodeQRCodeadd_datar   
make_imagesaveioBytesIO
isinstance	get_imageImageqrimgs     N/var/www/api/venv/lib/python3.11/site-packages/qrcode/tests/test_qrcode_pil.pytest_render_pilr      sj    	BKK
--//CHHRZ\\cmmoou{3333333    
back_color)TransParentred         c                     t          j                    }|                    t                     |                    d          }|                    t          j                               d S )Nr   )r   r   r   r   r   r   r   r   r   )r   r   r   s      r   test_render_pil_backgroundr%      sP    	BKK
--=-
1
1CHHRZ\\r   c                      t          j                    } |                     t                     |                     dd          }|                    t          j                               d S )Nr   )7   _   #   )r   
fill_colorr$   r   s     r   %test_render_pil_with_rgb_color_tuplesr+       sR    	BKK
--?|-
L
LCHHRZ\\r   c                      t          j        d          } |                     t                     |                                 }|                    t          j                               d S )N   )mask_patternr$   r   s     r   test_render_with_patternr/   '   sQ    	A	&	&	&BKK
--//CHHRZ\\r   c                      t          j        t           j                  } |                     t                     |                     t                    }|                    t          j	                               d S )Nerror_correction)image_factory
r   r   ERROR_CORRECT_Lr   r   r   r   r   r   r   r   s     r   test_render_styled_Imager6   .   sZ    	(>	?	?	?BKK
--n-
5
5CHHRZ\\r   c                  6   t                               ddd          } t          j        t          j                  }|                    t                     |                    t          |           }|	                    t          j                               d S )NRGB
   r:   r   colorr1   )r3   embeded_image)r   newr   r   ERROR_CORRECT_Hr   r   r   r   r   r   r   )embeded_imgr   r   s      r   %test_render_styled_with_embeded_imagerA   5   ss    ))E85)99K	(>	?	?	?BKK
--nK-
P
PCHHRZ\\r   c                    t          | dz            }t                              ddd          }|                    |           t	          j        t          j                  }|                    t                     |	                    t          |          }|                    t          j                               d S )Ntest.pngr8   r9   r   r;   r1   )r3   embeded_image_path)strr   r>   r   r   r   r?   r   r   r   r   r   r   )tmp_pathtmpfiler@   r   r   s        r   *test_render_styled_with_embeded_image_pathrH   =   s    (Z'((G))E85)99KW	(>	?	?	?BKK
--n-
Q
QCHHRZ\\r   drawerc                    t          j        t           j                  }|                    t                     |                    t           |                       }|                    t          j	                               d S )Nr1   )r3   module_drawerr4   )rI   r   r   s      r   test_render_styled_with_drawerrL   G   so     
(>	?	?	?BKK
--$fhh   C HHRZ\\r   mask)r   front_color)r    r   r    r    )r   center_color
edge_color)r   
left_colorright_color)r   	top_colorbottom_colorr8   r9   r   r;   )r   color_mask_imagec                     t          j        t           j                  }|                    t                     |                    t          |           }|                    t          j	                               d S )Nr1   )r3   
color_maskr4   )rM   r   r   s      r   test_render_styled_with_maskrX   \   s^    0 
(>	?	?	?BKK
--n-
F
FCHHRZ\\r   c                    t          | dz            }t                              ddd          }|                    |           t	          j        t          j                  }|                    t                     t          j
        t                    5  |                    |           ddd           n# 1 swxY w Y   t          j
        t                    5  |                    |	           ddd           n# 1 swxY w Y   t	          j        t          j                  }|                    t                     t          j
        t                    5  |                    |           ddd           n# 1 swxY w Y   t          j
        t                    5  |                    |	           ddd           n# 1 swxY w Y   t	          j        t          j                  }|                    t                     t          j
        t                    5  |                    |           ddd           n# 1 swxY w Y   t          j
        t                    5  |                    |	           ddd           n# 1 swxY w Y   t	          j        t          j                  }|                    t                     |                    |           |                    |	           dS )
zbIf an embedded image is specified, error correction must be the highest so the QR code is readablerC   r8   r9   r   r;   r1   )rD   N)r=   )rE   r   r>   r   r   r   r5   r   r   pytestraises
ValueErrorr   ERROR_CORRECT_MERROR_CORRECT_Qr?   )rF   rG   embedded_imgr   s       r   (test_embedded_image_and_error_correctionr`   z   s   (Z'((G99UHE9::Lg	(>	?	?	?BKK	z	"	" 2 2
1112 2 2 2 2 2 2 2 2 2 2 2 2 2 2	z	"	" 2 2
L1112 2 2 2 2 2 2 2 2 2 2 2 2 2 2 
(>	?	?	?BKK	z	"	" 2 2
1112 2 2 2 2 2 2 2 2 2 2 2 2 2 2	z	"	" 2 2
L1112 2 2 2 2 2 2 2 2 2 2 2 2 2 2 
(>	?	?	?BKK	z	"	" 2 2
1112 2 2 2 2 2 2 2 2 2 2 2 2 2 2	z	"	" 2 2
L1112 2 2 2 2 2 2 2 2 2 2 2 2 2 2 
(>	?	?	?BKKMMWM---MMM-----sl   B::B>B>DDDFFF%GGG%III,JJJc                  .    t          j        d           d S )Nimage)r   make r   r   test_shortcutre      s    
Kr   )*r   rZ   r   qrcode.utilqrcode.tests.constsr   r   r   r   importorskipr   qrcode.image.styledpilr   qrcode.image.stylesr	   r
   r   markparametrizer%   r+   r/   r6   rA   rH   CircleModuleDrawerGappedSquareModuleDrawerHorizontalBarsDrawerRoundedModuleDrawerSquareModuleDrawerVerticalBarsDrawerrL   SolidFillColorMaskRadialGradiantColorMaskSquareGradiantColorMaskHorizontalGradiantColorMaskVerticalGradiantColorMaskImageColorMaskr>   rX   r`   re   rd   r   r   <module>ry      s   				       ? ? ? ? ? ? ? ? ? ? ? ?K0FGGG >555555========4 4 4 'N'N'NOO  PO           (.*)((
 
 
 
 
%
%''%
%CHHH%
%1CQTUUU*
*5S	
 	
 	
 	+
*5S	
 	
 	
 	/
.%	
 	
 	
 	-
,%	
 	
 	
 	"
!uyyPUy/V/V	
 	
 	
! . / .. . .D    r   