
    eK                         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d             Z	ed             Z
ed             Zeej                            dddg          d	                         Zd
Zed             ZdS )    N)run_panel_serve	unix_onlywait_for_port
write_filec                 Z   d}d}t          || j                   t          j                            | j                  d d         }t          ddd| j        g          5 }t          |j                  }t          j
        d| d|           }|j        d	k    sJ d
|j                            d          v sJ t          || j                   t          j
        d| d|           }|j        d	k    sJ d|j                            d          v sJ 	 d d d            d S # 1 swxY w Y   d S )N;import panel as pn; pn.Row('# Example').servable(title='A')=import panel as pn; pn.Row('# Example 2').servable(title='B')--port0z--autoreloadhttp://localhost:/   z<title>A</title>utf-8z<title>B</title>)r   fileospathbasenamenamer   r   stdoutrequestsgetstatus_codecontentdecode)py_fileappapp2app_namepportrr2s           >lib/python3.11/site-packages/panel/tests/command/test_serve.pytest_autoreload_appr%      s   
GCJDsGL!!!w--crc2H	(CF	G	G 
@1QX&&L>T>>H>>??}####!QY%5%5g%>%>>>>>4&&&\?d??X??@@~$$$$!RZ%6%6w%?%??????
@ 
@ 
@ 
@ 
@ 
@ 
@ 
@ 
@ 
@ 
@ 
@ 
@ 
@ 
@ 
@ 
@ 
@s   B4D  D$'D$c                 F   d}t          || j                   t          ddd| j        g          5 }t	          |j                  }t          j        d| d          }|j        dk    sJ d|j	        
                    d	          v sJ 	 d d d            d S # 1 swxY w Y   d S )
Nr   r   r   --adminr   /adminr   Adminr   r   r   r   r   r   r   r   r   r   r   r   )r   r   r    r!   r"   s        r$   test_serve_adminr+       s    
GCsGL!!!	(CGLA	B	B 4aQX&&L9T999::}####!)**73333333	4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4s   ABBBc                    d}t          || j                   t          ddddd| j        g          5 }t	          |j                  }t          j        d| d          }|j        d	k    sJ d
|j	        
                    d          v sJ t          j        d| d          }|j        dk    sJ 	 d d d            d S # 1 swxY w Y   d S )Nr   r   r   r'   z--admin-endpointfoor   z/foor   r)   r   r(   i  r*   )r   r   r    r!   r"   r#   s         r$    test_serve_admin_custom_endpointr.   +   s(   
GCsGL!!!	(C4Fw|\	]	] %abQX&&L7T77788}####!)**7333333\:d:::;;~$$$$$% % % % % % % % % % % % % % % % % %s   A=B==CCrelativeTFc                    d}t          ||j                   d}d}t          j        dd          }t          j        dd          }t          ||j                   t          ||j                   | rIt          j                            |j                  }t          j                            |j                  }n	|j        }d }t          ddd	||j        |j        g|
          5 }	t          |	j                  }
t          j        d|
 d          }|j        dk    sJ |j                            d          |k    sJ 	 d d d            d S # 1 swxY w Y   d S )Nz<html><body>Foo</body></html>r   r	   wz.pymodesuffixr   r   z--index)cwdr   r   r   r   )r   r   tempfileNamedTemporaryFiler   r   r   r   dirnamer   r   r   r   r   r   r   r   )r/   	html_fileindexr   r   py1py2
index_pathr5   r    r!   r"   s               r$   test_custom_html_indexr>   8   s    ,Euin%%%
GCJD

%3u
=
=
=C

%3u
=
=
=CsCHtSX W%%in55
gooin--^
	(CJ#(SY\	]	]	] 2abQX&&L4T44455}####y((E11111	2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2s   'AEEEz
# My app

```python
import panel as pn
pn.extension(template='fast')
```

A description

```python
pn.Row('# Example').servable()
```
c                  v   t          j        dd          } t          t          | j                   t          dd| j        g          5 }t          |j                  }t          j
        d| d          }|j        dk    sJ d	|j                            d
          v sJ 	 d d d            d S # 1 swxY w Y   d S )Nr1   z.mdr2   r   r   r   r   r   z<title>My app</title>r   )r6   r7   r   md_appr   r   r   r   r   r   r   r   r   r   )mdr    r!   r"   s       r$   test_serve_markdownrB   `   s   		$#e	<	<	<Bvrw	(C1	2	2 DaQX&&L4T44455}####&!)*:*:7*C*CCCCCC	D D D D D D D D D D D D D D D D D Ds   AB..B25B2)r   r6   pytestr   panel.tests.utilr   r   r   r   r%   r+   r.   markparametrizer>   r@   rB        r$   <module>rI      s&   				              
 @ @ @& 4 4 4 
% 
% 
% dE]332 2 43 2.
 D D D D DrH   