
    e                         d dl Z d dlZd dlmZ d dlmZ d dlmZmZ d dl	m
Z
 ej        d             Z G d de j                  Zd	 Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd ZdS )    NLocation)state)serve_and_request
wait_until)edit_readonlyc                      t                      } t          |           5  d| _        d| _        d| _        d| _        d| _        d| _        d d d            n# 1 swxY w Y   | S )Nzhttp://localhost:5006	localhost http)r   r   hrefhostnamepathnameprotocolsearchhash)locs    <lib/python3.11/site-packages/panel/tests/io/test_location.pylocationr   
   s    
**C	s		  *"
               Js   +AAAc                   R    e Zd Z ej        d          Z ej        d          ZdS )SyncParameterizedN)default)__name__
__module____qualname__paramIntegerintegerStringstring     r   r   r      s6        emD)))GU\$'''FFFr"   r   c                     |                      d           | j        dk    sJ |                      d           | j        dk    sJ d S )N   )az?a=1c)bz?a=1&b=c)update_queryr   )r   s    r   test_location_update_queryr)      s\    A?f$$$$C   ?j((((((r"   c                     t          dd          }|                     |           | j        dk    sJ |                     |           | j        g k    sJ | j        dk    sJ d S )Nr$   abcr   r    ?integer=1&string=abcr   r   syncr   unsync_syncedr   ps     r   test_location_sync_query_initr4   $   sy    !E222AMM!?55555OOAr!!!!?b      r"   c                 H   t          dd          }|                     |           | j        dk    sJ |                     |           | j        dk    sJ |                     dd           |j        dk    sJ |j        dk    sJ d|_        d	|_        | j        d
k    sJ d S )Nr$   r+   r,   r-   r      def   ghiz?integer=2&string=defr   r/   r   r0   r(   r   r    r2   s     r   test_location_unsyncr;   ,   s    !E222AMM!?55555OOA?b    !E2229>>>>8uAIAH?5555555r"   c                 L   t          dd          }|                     |           | j        dk    sJ |                     |dg           | j        dk    sJ |                     dd           |j        dk    sJ |j        dk    sJ d	|_        d
|_        | j        dk    sJ d S )Nr$   r+   r,   r-   r    
?integer=1r6   r7   r8   r9   z?integer=3&string=defr:   r2   s     r   test_location_unsync_partialr>   9   s    !E222AMM!?55555OOAz"""?l****!E2229>>>>8uAIAH?5555555r"   c                     t          dd          }|                     |dg           | j        dk    sJ |                     |           | j        g k    sJ d S )Nr$   r+   r,   r   r=   r.   r2   s     r   %test_location_sync_query_init_partialr@   F   si    !E222AMM!i[!!!?l****OOAr!!!!!!r"   c                     t          dd          }|                     |ddd           | j        dk    sJ |                     |           | j        g k    sJ | j        dk    sJ d S )Nr$   r+   r,   intstr?int=1&str=abcr   r.   r2   s     r   $test_location_sync_query_init_renamerE   M   s    !E222AMM!%88999?.....OOAr!!!!?b      r"   c                     t                      }|                     |           d|_        | j        dk    sJ |                     |           | j        g k    sJ | j        dk    sJ d S )Nr6   z
?integer=2r   )r   r/   r   r   r0   r1   r2   s     r   test_location_sync_queryrG   U   sx    AMM!AI?l****OOAr!!!!?b      r"   c                     t                      }d| _        |                     |           |j        dk    sJ |j        dk    sJ |                     |           | j        g k    sJ | j        dk    sJ d S Nr-   r$   r+   r   r   r   r/   r   r    r0   r1   r2   s     r   test_location_sync_param_initrK   ^   s    A-HOMM!9>>>>8uOOAr!!!!?b      r"   c                     t          d          }g fd}|                     ||           d| _        ddigk    sJ |                     |           | j        g k    sJ | j        dk    sJ d S )	Nr+   )r    c                 2                         |            d S )N)append)changechangess    r   on_errorz-test_location_sync_on_error.<locals>.on_errork   s    vr"   )rQ   z?integer=a&string=abcr   r%   r   r.   )r   r3   rQ   rP   s      @r   test_location_sync_on_errorrR   h   s    '''AG    MM!hM'''-HO	3'(((((OOAr!!!!?b      r"   c                     t                      }d| _        |                     |dg           |j        dk    sJ |j        J |                     |           | j        g k    sJ | j        dk    sJ d S )Nr-   r   r$   z?string=abcrJ   r2   s     r   %test_location_sync_param_init_partialrT   t   s    A-HOMM!i[!!!9>>>>8OOAr!!!!?m++++++r"   c                     t                      }d| _        |                     |ddd           |j        dk    sJ |j        dk    sJ |                     |           | j        g k    sJ | j        dk    sJ d S )NrD   rB   rC   r,   r$   r+   r   rJ   r2   s     r   $test_location_sync_param_init_renamerV   ~   s    A&HOMM!%889999>>>>8uOOAr!!!!?b      r"   c                     t                      }|                     |           d| _        |j        dk    sJ |j        dk    sJ |                     |           | j        g k    sJ | j        dk    sJ d S rI   )r   r/   r   r   r    r0   r1   r2   s     r   test_location_sync_param_updaterX      s    AMM!-HO9>>>>8uOOAr!!!!?b      r"   c                      g fd} t          | d          }t          fd           d         }|j        |j        k    sJ |j        dk    sJ |j        dk    sJ |j        dk    sJ |j        dk    sJ d S )	Nc                  J    t           j        }                     |            dS )Nz# Location Test)r   r   rN   )r   locss    r   appz7test_server_location_populate_from_request.<locals>.app   s"    nC  r"   z?foo=1)suffixc                  *    t                     dk    S )Nr$   )len)r[   s   r   <lambda>z<test_server_location_populate_from_request.<locals>.<lambda>   s    s4yyA~ r"   r   zhttp:r
   /)r   r   r   urlr   r   r   r   )r\   requestr   r[   s      @r   *test_server_location_populate_from_requestrd      s    D! ! ! ! !
  H555G%%%%&&&
q'C8w{""""<7""""<;&&&&<3:!!!!!!r"   c                  &    t          d           d S )Nsrcdoc)r   r   r!   r"   r   test_iframe_srcdoc_locationrg      s    hr"   )r   pytestpanel.io.locationr   panel.io.stater   panel.tests.utilr   r   
panel.utilr   fixturer   Parameterizedr   r)   r4   r;   r>   r@   rE   rG   rK   rR   rT   rV   rX   rd   rg   r!   r"   r   <module>ro      s     & & & & & &             : : : : : : : : $ $ $ $ $ $ 	 	 	( ( ( ( (+ ( ( () ) )! ! !6 6 66 6 6" " "! ! !! ! !! ! !
! 
! 
!, , ,! ! !! ! !" " "&         r"   