
    vg                         d dl Z d dlZd dlmZ d dlmZ  G d dej                  Z G d dej                  Z G d d	ej                  Z G d
 d          Z	d Z
edk    r ej        d           dS dS )    N)DummySupervisor)DummyRequestc                   >    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	S )
DeferredWebProducerTestsc                     ddl m} |S )Nr   )DeferredWebProducer)supervisor.webr   )selfr   s     V/var/www/pixelcanvas.ch/venv/lib/python3.11/site-packages/supervisor/tests/test_web.py_getTargetClassz(DeferredWebProducerTests._getTargetClass   s    666666""    c                 B     |                                  ||          }|S Nr   r
   requestcallbackproducers       r   _makeOnez!DeferredWebProducerTests._makeOne   s$    )4''))'8<<r   c                 B   t          dg dd          }d }d|_        |                     ||          }|                     |j        |           |                     |j        |           |                     |j        d           |                     |j        d           d S )N/index.html c                      d S r    xs    r   <lambda>z4DeferredWebProducerTests.test_ctor.<locals>.<lambda>   s    d r      F)r   delayr   assertEqualr   r   finishedr   s       r   	test_ctorz"DeferredWebProducerTests.test_ctor   s    }b"b99"?==(33*H555)7333*E222+++++r   c                     t          dg dd          }ddlm fd}d|_        |                     ||          }|                     |                                           d S )Nr   r   r   NOT_DONE_YETc                      S r   r   )r   r%   s    r   r   zADeferredWebProducerTests.test_more_not_done_yet.<locals>.<lambda>   s    l r   r   )r   supervisor.httpr%   r   r   r    more)r
   r   r   r   r%   s       @r   test_more_not_done_yetz/DeferredWebProducerTests.test_more_not_done_yet   st    }b"b99000000****==(33,77777r   c                 >   t          dg dd          }d }d|_        |                     ||          }|                     |                                d            |                     |j                   |                     |                                d           d S )Nr   r   c                      dS )Ndoner   r   s    r   r   z=DeferredWebProducerTests.test_more_finished.<locals>.<lambda>$   s    f r   r   )r   r   r   r    r(   
assertTruer!   r   s       r   test_more_finishedz+DeferredWebProducerTests.test_more_finished"   s    }b"b99$$==(33$///)***"-----r   c                 J   t          dg dd          }d }d|_        |                     ||          }|                     |                                d            |j        j        j        j        }|                     t          |          d           |d         }|                     |d         d           | 
                    |d                             d          |d                    |                     |j        d           |                     |j        d	           d S )
Nr   r   c                       t          d          )Nfoo)
ValueErrorargs    r   r   zEDeferredWebProducerTests.test_more_exception_caught.<locals>.callback-   s    U###r   r   r   zWeb interface error	TracebackTi  )r   r   r   r    r(   channelserverloggerloggedlenr-   
startswithr!   _error)r
   r   r   r   logdatar9   s         r   test_more_exception_caughtz3DeferredWebProducerTests.test_more_exception_caught+   s   }b"b99	$ 	$ 	$==(33$////(/6Wq)))$9:::q	,,[996!9EEE*D111-----r   c                    t          dg dd          }d }d|_        |                     ||          }dddii}|                    |          }|                     |d            |                     |j        d           |                     |j        d	         d
           |                     |j        d         d           d S )Nr   r   c                      d S r   r   r3   s    r   r   zEDeferredWebProducerTests.test_sendresponse_redirect.<locals>.<lambda><        r   r   headersLocationabci-  Content-Typez
text/plainContent-Lengthr   )r   r   r   sendresponser    r<   rB   r
   r   r   r   responseresults         r   test_sendresponse_redirectz3DeferredWebProducerTests.test_sendresponse_redirect:   s    }b"b99$$==(33
512&&x00&&&---8,GGG)9:A>>>>>r   c                    t          dg dd          }d }d|_        |                     ||          }dddid}|                    |          }|                     |d            |                     |j        d         d           |                     |j        d	         d
           |                     |j        d         d           d S )Nr   r   c                      d S r   r   r3   s    r   r   zVDeferredWebProducerTests.test_sendresponse_withbody_and_content_type.<locals>.<lambda>H   rA   r   r   rD   rE   z	text/html)bodyrB   rF      r   )r   r   r   rG   r    rB   	producersrH   s         r   +test_sendresponse_withbody_and_content_typezDDeferredWebProducerTests.test_sendresponse_withbody_and_content_typeF   s    }b"b99$$==(33!n[-IJJ&&x00&&&8+FFF)9:A>>>*1-u55555r   N)__name__
__module____qualname__r   r   r"   r)   r.   r>   rK   rQ   r   r   r   r   r      s        # # #  , , ,8 8 8. . .. . .
? 
? 
?
6 
6 
6 
6 
6r   r   c                   8    e Zd Zd Zd Zd Zd Zd Zd Zd Z	dS )	UIHandlerTestsc                     ddl m} |S )Nr   )supervisor_ui_handler)r	   rX   )r
   rX   s     r   r   zUIHandlerTests._getTargetClassS   s    888888$$r   c                 \    t                      } |                                 |          }|S r   )r   r   )r
   supervisordhandlers      r   r   zUIHandlerTests._makeOneW   s-    %''($&&((55r   c                     t          dg ddddi          }|                                 }|                    |          }|                     |d            d S )Nz/foo.cssr   	PATH_INFO)r   r   handle_requestr    )r
   r   r[   datas       r   "test_handle_request_no_view_methodz1UIHandlerTests.test_handle_request_no_view_method\   sX    z2r2J7OPP--//%%g..t$$$$$r   c                 X   t          dg ddddi          }|                                 }|                    |          }|                     |d            |                     |j        j        j        |           ddlm} |                     |j        j        j	        j
        |           d S )Nr   r   r]   r   
StatusView)r   r   r^   r    r6   r   r   r	   rc   r   	__class__)r
   r   r[   r_   rc   s        r   test_handle_request_defaultz*UIHandlerTests.test_handle_request_defaultb   s    }b"b +M:< <--//%%g..t$$$197CCC------1:DZPPPPPr   c                 &   t          dg ddddi          }|                                 }|                    |           ddlm} |j        j        j        }|                     |j	        |           |                     |j
        j        d           d S )Nr   r   r]   r   rb   ui/status.html)r   r   r^   r	   rc   r6   r   r   r    rd   contexttemplate)r
   r   r[   rc   views        r   test_handle_request_index_htmlz-UIHandlerTests.test_handle_request_index_htmll   s    }b"b +M:< <--//w'''------'0444.0@AAAAAr   c                 &   t          dg ddddi          }|                                 }|                    |           ddlm} |j        j        j        }|                     |j	        |           |                     |j
        j        d           d S )N
/tail.htmlr   r]   r   )TailViewzui/tail.html)r   r   r^   r	   rn   r6   r   r   r    rd   rh   ri   )r
   r   r[   rn   rj   s        r   test_handle_request_tail_htmlz,UIHandlerTests.test_handle_request_tail_htmlv   s    |RR +L9; ;--//w'''++++++'0222.?????r   c                 &   t          dg ddddi          }|                                 }|                    |           ddlm} |j        j        j        }|                     |j	        |           |                     |j
        j        d            d S )Nrm   r   r]   z/ok.htmlr   )OKView)r   r   r^   r	   rq   r6   r   r   r    rd   rh   ri   )r
   r   r[   rq   rj   s        r   test_handle_request_ok_htmlz*UIHandlerTests.test_handle_request_ok_html   s    |RR +J79 9--//w'''))))))'0000.55555r   N)
rR   rS   rT   r   r   r`   re   rk   ro   rr   r   r   r   rV   rV   R   s        % % %  
% % %Q Q QB B B@ @ @6 6 6 6 6r   rV   c                   ,    e Zd Zd Zd Zd Zd Zd ZdS )StatusViewTestsc                     ddl m} |S )Nr   rb   )r	   rc   )r
   rc   s     r   r   zStatusViewTests._getTargetClass   s    ------r   c                 @    |                                  } ||          S r   r   )r
   rh   klasss      r   r   zStatusViewTests._makeOne   s!    $$&&uW~~r   c                     t                      }t                      |_        d|_        i |_        |                     |          }|                     t          |j        dd            d S )Nrg   process)	DummyContextr   rZ   ri   formr   assertRaisesr2   make_callback)r
   rh   rj   s      r   test_make_callback_noactionz+StatusViewTests.test_make_callback_noaction   s\    ..-//+}}W%%*d&8)TJJJJJr   c                 D   t                      }t                      |_        d|_        t	          dg dd          |_        i |_        i |_        |                     |          }|	                                }| 
                    |                    d          |           d S )Nrg   z/foor   z<!DOCTYPE html PUBLIC)rz   r   rZ   ri   r   r   r{   rI   r   renderr-   r;   )r
   rh   rj   r_   s       r   test_render_noactionz$StatusViewTests.test_render_noaction   s    ..-//+&vr2r::}}W%%{{}}(?@@$GGGGGr   c                    t                      }t                      |_        d|_        i |_        ddi|_        |                     |          }|                                }ddlm	} | 
                    ||u |           d S )Nrg   actionrefreshr   r$   )rz   r   rZ   ri   rI   r{   r   r   r'   r%   r-   )r
   rh   rj   r_   r%   s        r   test_render_refreshz#StatusViewTests.test_render_refresh   s    ..-//+ +}}W%%{{}}000000,d33333r   N)rR   rS   rT   r   r   r~   r   r   r   r   r   rt   rt      se            K K K	H 	H 	H	4 	4 	4 	4 	4r   rt   c                       e Zd ZdS )rz   N)rR   rS   rT   r   r   r   rz   rz      s        Dr   rz   c                  T    t          j        t          j        t                             S r   )unittestfindTestCasessysmodulesrR   r   r   r   
test_suiter      s    !#+h"7888r   __main__r   )defaultTest)r   r   supervisor.tests.baser   r   TestCaser   rV   rt   rz   r   rR   mainr   r   r   <module>r      s4   



  1 1 1 1 1 1 . . . . . .I6 I6 I6 I6 I6x0 I6 I6 I6V66 66 66 66 66X& 66 66 66r%4 %4 %4 %4 %4h' %4 %4 %4N	 	 	 	 	 	 	 	9 9 9 zHMl++++++ r   