
    ^hF                         S r SSKrSSKrSSKJr  SSKrSSKrSSKrSSKJ	r	  \	S 5       r
SrS rS rS	 rS
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rg)zTest Image widget    NImage)contextmanagerc               #   6  #    [         R                  " SS5      n [        R                  " 5       u  p[        R
                  " U5        [        US5       nUR                  U 5        S S S 5        Uv   [        R                  " U5        g ! , (       d  f       N)= f7f)Nzipywidgets.widgets.testsz!data/jupyter-logo-transparent.pngwb)	pkgutilget_datatempfilemkstemposcloseopenwriteremove)	LOGO_DATAhandlefnamefs       d/home/james-whalen/.local/lib/python3.13/site-packages/ipywidgets/widgets/tests/test_widget_image.pyget_logo_pngr      sr        !;!DFI$$&MFHHV	eT	a		 
 KIIe 
	s   ABB%#B
BB@3ff9eafd7197083153e83339a72e7a335539bae189c33554c680e4382c98af02c                      [        5         g Nr        r   test_empty_imager   %   s    	Gr   c                      Sn [        U S9  g )Ns   eʀ͚k#)valuer   )random_bytess    r   test_image_valuer    *   s    =L	r   c                  :    [        SS9  [        SS9  [        SS9  g )Npngformatjpegurlr   r   r   r   test_image_formatr'   0   s    			r   c                      [        5        n [        R                  " U 5      n[        UR                  [
        5        S S S 5        g ! , (       d  f       g = fr   )r   r   	from_fileassert_equal_hashr   LOGO_PNG_DIGEST)LOGO_PNGimgs     r   test_from_filenamer.   9   s/    	8ooh'#))_5 
s   1A
Ac                      [        5       n [        5        nU R                  U5        [        U R                  [
        5        S S S 5        g ! , (       d  f       g = fr   )r   r   set_value_from_filer*   r   r+   )r-   r,   s     r   test_set_from_filenamer1   @   s6    
'C	8)#))_5 
s   ,A


Ac                      [        5        n [        U S5       n[        R                  " U5      n[	        UR
                  [        5        S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = fNrb)r   r   r   r)   r*   r   r+   r,   r   r-   s      r   test_from_filer6   H   sL    	8(D!Q//!$Ccii9 " 
!! 
s"   A+1A	A+
A(	$A++
A9c                     [        5       n [        5        n[        US5       nU R                  U5        [	        U R
                  [        5        S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = fr3   )r   r   r   r0   r*   r   r+   )r-   r,   r   s      r   test_set_value_from_filer8   O   sS    
'C	8(D!Q##A&cii9 " 
!! 
s"   A0,AA0
A-	)A00
A>c                  T    [         R                  " S5      n U R                  S:X  d   eg )N(https://jupyter.org/assets/main-logo.svg(   https://jupyter.org/assets/main-logo.svgr   from_urlr   r-   s    r   test_from_url_unicoder?   W   s$    
..C
DC99CCCCr   c                  T    [         R                  " S5      n U R                  S:X  d   eg )Nr;   r<   r>   s    r   test_from_url_bytesrA   \   s$    
..D
EC99CCCCr   c                      [         R                  " SSS9 n U R                  nU R                  5         [        R
                  " U5      nS S S 5        WR                  S:X  d   eg ! , (       d  f       N!= f)N.svgFsuffixdeletezsvg+xmlr
   NamedTemporaryFilenamer   r   r)   r$   r   rI   r-   s      r   test_format_inference_filenamerK   b   sX    		$	$F5	AQvv		ood# 
B
 ::""" 
B	As   3A$$
A2c                      [         R                  " SSS9 n [        R                  " U 5      nUR                  S:X  d   e S S S 5        g ! , (       d  f       g = f)Nz.gifFrD   gif)r
   rH   r   r)   r$   )r   r-   s     r   test_format_inference_filerN   k   sA    		$	$F5	AQooa zzU""" 
B	A	As   )A		
Ac                      [         R                  " S5      n [        R                  " U 5      nUR                  S:X  d   eg )Nr   r"   )ioBytesIOr   r)   r$   )fstreamr-   s     r   test_format_inference_streamrS   r   s/    jjoG
//'
"C::r   c                  L   [         R                  " S5      n [        R                  " U 5      nUR	                  5       n[        US   [        [        45      (       d   e[        US   5      US'   [        5       nUR                  U5        UR                  UR                  :X  d   eg )Ns   123r   )
rP   rQ   r   r)   	get_state
isinstancebytes
memoryview	set_stater   )rR   r-   	img_stateimg_copys       r   test_serializer\   z   s    jj G
//'
"CI i(5**=>>>>#Ig$67Ig wHy!99&&&r   c                      [         R                  " SSS9 n U R                  nU R                  5         [        R
                  " USS9nS S S 5        WR                  S:X  d   eg ! , (       d  f       N!= f)NrC   FrD   rM   r#   rG   rJ   s      r   !test_format_inference_overridabler^      sZ    		$	$F5	AQvv		ood51 
B
 :: 
B	As   2A##
A1c                     [        5        n [        U S5       n[        R                  " U5      n[	        UR                  5       5      S:  d   eUR                  5       R                  S5      (       d   eUR                  5       SS S:X  d   e S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)Nr4      )z...)r   r   r   r)   len__repr__endswithr5   s      r   test_value_repr_lengthrg      s    	8(D!Q//!$Cs||~&,,,<<>**3////<<>"R(E111	 " 
!! 
s#   B0A5BB0
B-	)B00
B>c                  \    [         R                  " S5      n SU R                  5       ;   d   eg )Nr;   r:   )r   r=   re   r>   s    r   test_value_repr_urlri      s%    
..D
EC5GGGr   c                 p    [         R                  " S5      nUR                  U 5        UR                  5       $ )Nsha256)hashlibnewupdate	hexdigest)byte_strms     r   get_hash_hexrr      s(    HAHHX;;=r   c                 &    [        U 5      U:X  d   eg r   )rr   )rp   digests     r   r*   r*      s    !V+++r   )__doc__rP   r   
ipywidgetsr   rl   r   r
   
contextlibr   r   r+   r   r    r'   r.   r1   r6   r8   r?   rA   rK   rN   rS   r\   r^   rg   ri   rr   r*   r   r   r   <module>rx      s     	 	     %   U
66::D
D##'"2H,r   