HEX
Server: LiteSpeed
System: Linux s1049.use1.mysecurecloudhost.com 4.18.0-477.27.2.lve.el8.x86_64 #1 SMP Wed Oct 11 12:32:56 UTC 2023 x86_64
User: xedaptot (3356)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: //lib/python3.6/site-packages/supervisor/tests/__pycache__/test_supervisord.cpython-36.opt-1.pyc
3

�k�`ć�@sddlZddlZddlZddlZddlZddlZddlZddlmZddlm	Z	ddl
mZddl
mZddl
m
Z
ddl
mZddl
mZdd	l
mZdd
lmZyddlZWnek
r�dZYnXGdd�dej�ZGd
d�dej�Zdd�Zedk�rejdd�dS)�N)�
ProcessStates)�SupervisorStates)�DummyOptions)�DummyPConfig)�DummyPGroupConfig)�DummyProcess)�DummyProcessGroup)�DummyDispatcher)�StringIOc@s0eZdZdd�Zerdd�Zdd�Zdd�Zd	S)
�EntryPointTestsc	Cs�ddlm}tjjtjjtjjt��dd�}t�}dd�|_	t
j}zHtj
�}tjj|d�}tjj|d�}|t
_|d	|d
|d|dgd
d�Wd|t
_tj|�X|j�}|jd|k|�dS)Nr)�main�fixtureszdonothing.confcSsdS)N��rrr�&/usr/lib/python3.6/test_supervisord.py�<lambda>#sz5EntryPointTests.test_main_noprofile.<locals>.<lambda>�log�pidz-cz-lz-jz-nT)�args�testzsupervisord started)�supervisor.supervisordr�os�path�join�abspath�dirname�__file__r
�fileno�sys�stdout�tempfile�mkdtemp�shutil�rmtree�getvalue�
assertTrue)	�selfr�conf�
new_stdout�
old_stdout�tempdirrr�outputrrr�test_main_noprofiles$
z#EntryPointTests.test_main_noprofilec	Cs�ddlm}tjjtjjtjjt��dd�}t�}dd�|_	t
j}zJtj
�}tjj|d�}tjj|d�}|t
_|d	|d
|d|dd
gdd�Wd|t
_tj|�X|j�}|jd|k|�dS)Nr)rr
zdonothing.confcSsdS)Nrrrrrrr9sz3EntryPointTests.test_main_profile.<locals>.<lambda>rrz-cz-lz-jz-nz"--profile_options=cumulative,callsT)rrzcumulative time, call count)rrrrrrrrr
rrrr r!r"r#r$r%)	r&rr'r(r)r*rrr+rrr�test_main_profile3s$
z!EntryPointTests.test_main_profilec	Cs�ddlm}tjjtjjtjjt��dd�}t�}dd�|_	t
j}zHtj
�}tjj|d�}tjj|d�}|t
_|d	|d
|d|dgd
d�Wd|t
_tj|�X|j�}|jt|�d�dS)Nr)rr
zdonothing.confcSsdS)NrrrrrrrNsz1EntryPointTests.test_silent_off.<locals>.<lambda>rrz-cz-lz-jz-nT)rr)rrrrrrrrr
rrrr r!r"r#r$Z
assertGreater�len)	r&rr'r(r)r*rrr+rrr�test_silent_offHs"
zEntryPointTests.test_silent_offc	Cs�ddlm}tjjtjjtjjt��dd�}t�}dd�|_	t
j}zJtj
�}tjj|d�}tjj|d�}|t
_|d	|d
|d|dd
gdd�Wd|t
_tj|�X|j�}|jt|�d�dS)Nr)rr
zdonothing.confcSsdS)Nrrrrrrrcsz0EntryPointTests.test_silent_on.<locals>.<lambda>rrz-cz-lz-jz-nz-sT)rr)rrrrrrrrr
rrrr r!r"r#r$�assertEqualr.)	r&rr'r(r)r*rrr+rrr�test_silent_on]s"
 zEntryPointTests.test_silent_onN)�__name__�
__module__�__qualname__r,�pstatsr-r/r1rrrrrs
rc@sDeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�Zd;d<�Z d=d>�Z!d?d@�Z"dAdB�Z#dCdD�Z$dEdF�Z%dGdH�Z&dIdJ�Z'dKdL�Z(dMdN�Z)dOS)P�SupervisordTestscCsddlm}|�dS)Nr)�clear)�supervisor.eventsr7)r&r7rrr�tearDownsszSupervisordTests.tearDowncCsddlm}|S)Nr)�
Supervisor)rr:)r&r:rrr�_getTargetClasswsz SupervisordTests._getTargetClasscCs|j�|�S)N)r;)r&�optionsrrr�_makeOne{szSupervisordTests._makeOnecCst�}t|ddd�}t|d|gd�g}||_d|_d|_|j|�}|j�|j|j	d�|j|j
d�|j|jdg�|j|jg�|j|j
dg�|j|jd�|jt|j�d	�|j|jdjj|�|j|jd�|j|jd�|j|jd�|j|jd�|j|jd�dS)
N�fooz/bin/fooz/tmp)�pconfigsTF�
setuid_called�rlimits_setr)rrr�process_group_configsr�firstr=rr0�fds_cleaned_uprA�parse_criticals�parse_warnings�parse_infos�autochildlogdir_clearedr.�process_groups�configr<�httpservers_opened�signals_set�
daemonized�pidfile_written�
cleaned_up)r&r<�pconfig�gconfigs�supervisordrrr�test_main_first~s,
z SupervisordTests.test_main_firstcCst�}t|ddd�}t|d|gd�g}||_d|_d|_|j|�}|j�|j|j	d�|j
t|d��|j|jdg�|j|j
g�|j|jg�|j|jd�|jt|j�d	�|j|jdjj|�|j|jd�|j|jd�|j|jd�|j|jd�|j|jd�dS)
Nr>z/bin/fooz/tmp)r?TFrAr@r)rrrrBrrCr=rr0rDZassertFalse�hasattrrErFrGrHr.rIrJr<rKrLrMrNrO)r&r<rPrQrRrrr�test_main_notfirst�s,
z#SupervisordTests.test_main_notfirstcCslt�}d|_t|ddd�}t|�}d|_d|_d|_d	|_d|i|_|j	|�}|j
dd�|j|jd
�dS)Nr�processz/bin/fooz/tmpFT)�once)rr)NN)rr)
r�waitpid_returnrr�drained�killing�laststop�
waitstatus�
pidhistoryr=�reapr0�finished)r&r<rPrVrRrrr�	test_reap�s

zSupervisordTests.test_reapcCs.t�}|j|�}|jddd�}|j|d�dS)NT�d)rW�recursionguard)rr=r^r0)r&r<rR�resultrrr�test_reap_recursionguard�s
z)SupervisordTests.test_reap_recursionguardcCslt�}d	|_t|ddd�}t|�}d|_d|_d|_d
|_d|i|_|j	|�}|j
dd�|j|jd�dS)NrrVz/bin/fooz/tmpFT�c)rb)rr)NN)rr)
rrXrrrYrZr[r\r]r=r^r0r_)r&r<rPrVrRrrr�test_reap_more_than_once�s

z)SupervisordTests.test_reap_more_than_oncecCs�t�}d|_t|ddd�}t|�}d|_d|_d|_d|_d|i|_|j	|�}|j
dd	�|j|jd�|j|j
jdd
�dS)
N�rrVz/bin/fooz/tmpFTr)rWz$reaped unknown pid 2 (exit status 0))rgr)NN)rrXrrrYrZr[r\r]r=r^r0r_�logger�data)r&r<rPrVrRrrr�test_reap_unknown_pid�s

z&SupervisordTests.test_reap_unknown_pidcCsJt�}tj|_|j|�}|j�|j|jjt	j
�|j|jjdd�dS)Nrz(received SIGTERM indicating exit request)
r�signal�SIGTERM�_signalr=�
handle_signalr0r<�moodr�SHUTDOWNrhri)r&r<rRrrr�test_handle_sigterm�s

z$SupervisordTests.test_handle_sigtermcCsJt�}tj|_|j|�}|j�|j|jjt	j
�|j|jjdd�dS)Nrz'received SIGINT indicating exit request)
rrk�SIGINTrmr=rnr0r<rorrprhri)r&r<rRrrr�test_handle_sigint�s

z#SupervisordTests.test_handle_sigintcCsJt�}tj|_|j|�}|j�|j|jjt	j
�|j|jjdd�dS)Nrz(received SIGQUIT indicating exit request)
rrk�SIGQUITrmr=rnr0r<rorrprhri)r&r<rRrrr�test_handle_sigquit�s

z$SupervisordTests.test_handle_sigquitcCs\t�}tj|_|j|�}|j|jjtj	�|j
�|j|jjtj�|j|jj
dd�dS)Nrz*received SIGHUP indicating restart request)rrk�SIGHUPrmr=r0r<ror�RUNNINGrn�
RESTARTINGrhri)r&r<rRrrr�#test_handle_sighup_in_running_states


z4SupervisordTests.test_handle_sighup_in_running_statecCsft�}tj|_|j|�}tj|j_|j	|jjtj�|j
�|j	|jjtj�|j	|jjdd�dS)Nrz@ignored SIGHUP indicating restart request (shutdown in progress))
rrkrvrmr=rrpr<ror0rnrhri)r&r<rRrrr�$test_handle_sighup_in_shutdown_state
s



z5SupervisordTests.test_handle_sighup_in_shutdown_statecCsPt�}tj|_|j|�}|j�|j|jjt	j
�d}|j|jj
d|k�dS)N�(received SIGCHLD indicating a child quit�'received SIGCLD indicating a child quitr)r{r|)rrk�SIGCHLDrmr=rnr0r<rorrwr%rhri)r&r<rRZmsgsrrr�test_handle_sigchlds

z$SupervisordTests.test_handle_sigchldcCs�t�}tj|_t|ddd�}t|tjd�}tj�d|_	|j
|�}t|ddd�g}t|d|d�|_t
|�}d|i|_|j�|j|jjtj�|j|jd�|j|jjd	d
�|j|jd�dS)N�process1z/bin/fooz/tmp)�staterr>)r?Trz.received SIGUSR2 indicating log reopen request)rrk�SIGUSR2rmrrrZSTOPPING�timeZdelayr=rrBrrIrnr0r<rorrwZ
logs_reopenedrhri)r&r<�pconfig1rrRr?Zdummypgrouprrr�test_handle_sigusr2(s&



z$SupervisordTests.test_handle_sigusr2cCsJt�}tj|_|j|�}|j�|j|jjt	j
�|j|jjdd�dS)Nrz#received SIGUSR1 indicating nothing)
rrk�SIGUSR1rmr=rnr0r<rorrwrhri)r&r<rRrrr�test_handle_unknown_signal=s

z+SupervisordTests.test_handle_unknown_signalcCs&t�}|j|�}|j|j�tj�dS)N)rr=r0Z	get_staterrw)r&r<rRrrr�test_get_stateGs
zSupervisordTests.test_get_statecCspt�}|j|�}t|ddd�}t|d|gd�}|g|j_|j�\}}}|j||g�|j|g�|j|g�dS)Nrz/bin/fooz/tmp�group1)r?)rr=rrr<rB�diff_to_activer0)r&r<rRrPr��added�changed�removedrrr�&test_diff_to_active_finds_groups_addedLs

z7SupervisordTests.test_diff_to_active_finds_groups_addedc	Cs�t�}|j|�}t|ddd�}t|d|gd�}t|ddd�}t|d|gd�}||g|j_|j|�|j|�|g|j_|j�\}}}|j|g�|j|g�|j||g�dS)	Nrz
/bin/process1z/tmpr�)r?�process2z
/bin/process2�group2)	rr=rrr<rB�add_process_groupr�r0)	r&r<rRrPr�r�r�r�r�rrr�(test_diff_to_active_finds_groups_removed[s



z9SupervisordTests.test_diff_to_active_finds_groups_removedcs~ddlm�m�t��|j��}��fdd�}��fdd�}|dddd	�}|d
|g�}|dd�}|d|g�}||g}|ddd
d	�}|d
|g�}|dd�}|d|g�}	|j|�|j|	�||j_|j�\}
}}|j	|
g�|j	|g�|j	||g�t��|j��}|dd�}
|dd�}|d
|
|g�}|g}|j|d
|
g��||j_|j�\}
}}|j	|
g�|j	|g�|j	||g�dS)Nr)�
ProcessConfig�ProcessGroupConfigcsX||ddddddddddddddddddddddddddddd�}|j|���f|�S)Ni�T�
rF)�name�command�	directory�umask�priority�	autostart�autorestart�	startsecs�startretries�uid�stdout_logfile�stdout_capture_maxbytes�stdout_events_enabled�stdout_logfile_backups�stdout_logfile_maxbytes�
stdout_syslog�stderr_logfile�stderr_capture_maxbytes�stderr_events_enabled�stderr_logfile_backups�stderr_logfile_maxbytes�
stderr_syslog�redirect_stderr�
stopsignal�stopwaitsecs�stopasgroup�killasgroup�	exitcodes�environment�	serverurl)r)�update)r�r��paramsrc)r�r<rr�make_pconfigws$
zBSupervisordTests.test_diff_to_active_changed.<locals>.make_pconfigcs��|d|�S)N�r)r�r?)r�r<rr�make_gconfig�szBSupervisordTests.test_diff_to_active_changed.<locals>.make_gconfigr�new)r�r�r�r��old)
�supervisor.optionsr�r�rr=r�r<rBr�r0)r&rRr�r�rPr�r�r��group3�group4r�r�r�r�Zpconfig2r)r�r�r<r�test_diff_to_active_changedqsB







z,SupervisordTests.test_diff_to_active_changedcsddlm�ddlm�m�t��|j��}��fdd�}�fdd�}d��fd	d
�	}|dd�}|d
�}|d|g|�}|dd�}|d�}|d|g|�}||g}	|dd�}|d
�}|d|g|�}
|dd�}|d�}|d|g|�}|j|
�|j|�|	|j_	|j
�\}}
}|j|g�|j|g�|j|
|g�t��|j��}|dd�}|d
�}|d|g|�}|dd�}|d�}|d|g|�}||g}	|dd�}|d�}|d|g|�}
|dd�}|d�}|d|g|�}|j|
�|j|�|	|j_	|j
�\}}
}|j|g�|j|g�|j|
|g�t��|j��}|dd�}|d
�}|d|g|d�}|dd�}|d�}|d|g|�}||g}	|dd�}|d
�}|d|g|d�}
|dd�}|d�}|d|g|�}|j|
�|j|�|	|j_	|j
�\}}
}|j|g�|j|g�|j|
|g�dS)Nr)�
EventTypes)�EventListenerConfig�EventListenerPoolConfigcsX||ddddddddddddddddddddddddddddd�}|j|���f|�S)Ni�Tr�rF)r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�)r)r�)r�r�r�rc)r�r<rrr��s$
zPSupervisordTests.test_diff_to_active_changed_eventlistener.<locals>.make_pconfigcs(g}x|D]}|jt�|d��q
W|S)N)�append�getattr)Zpool_event_namesrcZpool_event_name)r�rr�make_econfig�s
zPSupervisordTests.test_diff_to_active_changed_eventlistener.<locals>.make_econfig�&supervisor.dispatchers:default_handlercs��|d|d||�S)Nr�r�r)r�r?Zpool_eventsZresult_handler)r�r<rrr��szPSupervisordTests.test_diff_to_active_changed_eventlistener.<locals>.make_gconfigrzprocess1-newZTICK_60r�r�Z	TICK_3600r�zprocess1-oldZTICK_5znew-result-handlerzold-result-handler)r�)r8r�r�r�r�rr=r�r<rBr�r0)r&rRr�r�r�rPZeconfigr�r�r�r�r�r�r�r�r)r�r�r�r<r�)test_diff_to_active_changed_eventlistener�s�




















z:SupervisordTests.test_diff_to_active_changed_eventlistenercCs�t�}t|ddd�}t|d|gd�}|g|_|j|�}|j|ji�|j|�}|jt|jj	��dg�|j
|�|jd}|j|�}|j||jd�|j
|�dS)Nr>z/bin/fooz/tmp)r?)rrrrBr=r0rIr��list�keysr%)r&r<rP�gconfigrRrc�grouprrr�test_add_process_group/s




z'SupervisordTests.test_add_process_groupcs�ddlm}g��fdd�}|j|j|�t�}t|ddd�}t|d|gd�}|g|_|j|�}|j	|�d	|_
|j�|j�d
g�dS)Nr)�eventscs�jd�dS)Nr)r�)�event)�Lrr�callbackDszESupervisordTests.test_add_process_group_emits_event.<locals>.callbackr>z/bin/fooz/tmp)r?Tr)
�
supervisorr��	subscribeZProcessGroupAddedEventrrrrBr=r�r�
runforeverr0)r&r�r�r<rPr�rRr)r�r�"test_add_process_group_emits_eventAs

z3SupervisordTests.test_add_process_group_emits_eventcCs�t�}t|ddd�}t|d|gd�}|j|�}|jt|jd�|j|�|jd}|jd�}|j	|j
�|j|ji�|j	|�|j|�td�g|jd_
|jd�}|jt|jj��dg�|j	|�dS)Nr>z/bin/fooz/tmp)r?Zasdf)rrrr=�assertRaises�KeyError�remove_process_groupr�rIr%Zbefore_remove_calledr0r�unstopped_processesr�r�)r&r<rPr�rRr�rcrrr�test_remove_process_groupSs 






z*SupervisordTests.test_remove_process_groupcs�ddlm}g��fdd�}|j|j|�t�}t|ddd�}t|d|gd�}|g|_|j|�}|j	|�t
d�g|jd_|j
d�d	|_|j�|j�d
g�dS)Nr)r�cs�jd�dS)Nr)r�)r�)r�rrr�kszBSupervisordTests.test_remove_process_group_event.<locals>.callbackr>z/bin/fooz/tmp)r?Tr)r�r�r�ZProcessGroupRemovedEventrrrrBr=r�rrIZstopped_processesr�rr�r0)r&r�r�r<rPr�rRr)r�r�test_remove_process_group_evenths


z0SupervisordTests.test_remove_process_group_eventcsZddlm}g��fdd�}|j|j|�t�}|j|�}d|_|j�|j�dg�dS)Nr)r�cs�jd�dS)Nr)r�)r�)r�rrr�szNSupervisordTests.test_runforever_emits_generic_startup_event.<locals>.callbackTr)	r�r�r��SupervisorStateChangeEventrr=rr�r0)r&r�r�r<rRr)r�r�+test_runforever_emits_generic_startup_event|s
z<SupervisordTests.test_runforever_emits_generic_startup_eventcsZddlm}g��fdd�}|j|j|�t�}d|_|j|�}|j�|j�dg�dS)Nr)r�cs�jd�dS)Nrg)r�)r�)r�rrr��szOSupervisordTests.test_runforever_emits_generic_specific_event.<locals>.callbackTrg)	r�r�r��SupervisorRunningEventrrr=r�r0)r&r�r�r<rRr)r�r�,test_runforever_emits_generic_specific_event�s
z=SupervisordTests.test_runforever_emits_generic_specific_eventcCsFt�}d|_|j|�}|jt|j�d�|j�|jt|j�d�dS)NTr�)rrr=r0r.�ticksr�)r&r<rRrrr�test_runforever_calls_tick�s
z+SupervisordTests.test_runforever_calls_tickc	Cs�t�}dgddgf|j_|j|�}t|dd�}t||gd�}t|�}tdd�}tdd	�}tdtd
�}|||d�|_	d|i|_
d|_|j�|j
|jd�|j
|jd�|j
|jd�|j
|jd�dS)N���r>z/bin/foo)r?T)�readable)�writable)r��error)r�r�r�)r�pollerrcr=rrrr	�OSError�dispatchersrIrr�r0ZtransitionedZread_event_handledZwrite_event_handled�
error_handled)	r&r<rRrPr��pgroupr�r�r�rrr� test_runforever_poll_dispatchers�s"



z1SupervisordTests.test_runforever_poll_dispatcherscCs�t�}dggf|j_|j|�}t|dd�}t||gd�}t|�}ddlm}t	d|j
d�}d|i|_d|i|_d|_
|j|j
|j�dS)	Nr�r>z/bin/foo)r?r)�asyncore_25T)r�r�)rr�rcr=rrr�supervisor.medusar�r	�ExitNowr�rIrr�r�)r&r<rRrPr�r��asyncore�exitnowrrr�2test_runforever_select_dispatcher_exitnow_via_read�s


zCSupervisordTests.test_runforever_select_dispatcher_exitnow_via_readcCs�t�}gdgf|j_|j|�}t|dd�}t||gd�}t|�}ddlm}t	d|j
d�}d|i|_d|i|_d|_
|j|j
|j�dS)	Nr�r>z/bin/foo)r?r)r�T)r�r�)rr�rcr=rrrr�r�r	r�r�rIrr�r�)r&r<rRrPr�r�r�r�rrr�3test_runforever_select_dispatcher_exitnow_via_write�s


zDSupervisordTests.test_runforever_select_dispatcher_exitnow_via_writecCs�t�}dggf|j_|j|�}t|dd�}t||gd�}t|�}tdtd�}d|i|_	d|i|_
d|_|j�|j
|jd�dS)Nr�r>z/bin/foo)r?T)r�r�)rr�rcr=rrrr	�NotImplementedErrorr�rIrr�r0r�)r&r<rRrPr�r��notimplrrr�7test_runforever_select_dispatcher_handle_error_via_read�s


zHSupervisordTests.test_runforever_select_dispatcher_handle_error_via_readcCs�t�}gdgf|j_|j|�}t|dd�}t||gd�}t|�}tdtd�}d|i|_	d|i|_
d|_|j�|j
|jd�dS)Nr�r>z/bin/foo)r?T)r�r�)rr�rcr=rrrr	r�r�rIrr�r0r�)r&r<rRrPr�r�r�rrr�8test_runforever_select_dispatcher_handle_error_via_write�s


zISupervisordTests.test_runforever_select_dispatcher_handle_error_via_writecs�t�}|j|�}t|�}t|�}d|i|_tj|j_g��fdd�}ddl	m
}|j|j|�ddl
m}d|_|j|j|j�|j|j�|jt�d|j��|jt�d|j��|jt�d|j��|jt�d|j��dS)	Nr>cs�j|�dS)N)r�)r�)r�rrr��szHSupervisordTests.test_runforever_stopping_emits_events.<locals>.callbackr)r�)r�Tr)rr=rrrIrrpr<ror�r�r�r�r�r�rr�r�r�r%�all_stopped�
isinstancer�ZSupervisorStoppingEvent)r&r<rRr�r�r�r�r�r)r�r�%test_runforever_stopping_emits_events�s$


z6SupervisordTests.test_runforever_stopping_emits_eventscs�t�}|j|�}t|dd�}t||gd�}t|�}g��fdd�}d|i|_tj|j_	d|j_
ddlm}|j
|j|j�|j|jd�dS)	Nr>z/bin/foo)r?cs�jd�dS)Nr)r�r)r�rrr�sz,SupervisordTests.test_exit.<locals>.callbackTr)r�)rr=rrrrIrrxr<rorr�r�r�r�r�r0r�)r&r<rRrPr�r�r�r�r)r�r�	test_exit�s


zSupervisordTests.test_exitcs�t�}|j|�}t|dd�}t|�}t||gd�}t|�}|g|_g��fdd�}d|i|_tj	|j
_d|j
_|j
�|j|jd�dS)Nr>z/bin/foo)r?cs�jd�dS)Nr)r�r)r�rrr�sz4SupervisordTests.test_exit_delayed.<locals>.callbackTr)rr=rrrrr�rIrrxr<rorr�ZassertNotEqualZlastshutdownreport)r&r<rRrPrVr�r�r�r)r�r�test_exit_delayeds


z"SupervisordTests.test_exit_delayedcCs&ddlm}|tj�}|j|d�dS)Nr)�getSupervisorStateDescriptionrw)�supervisor.statesr�rrwr0)r&r�rcrrr�"test_getSupervisorStateDescriptions
z3SupervisordTests.test_getSupervisorStateDescriptioncs�ddlm}g��fdd�}|j|j|�t�}|j|�}|jdd�|j|jdd�|j|jdd�|j|jdd�|jt	��d�|jd	d�|j|jdd�|j|jdd�|j|jdd�|jt	��d
�|j�dj
|j�|jdd�|j|jdd�|j|jdd�|j|jdd�|jt	��d�|j�dj
|j�|jd
d�|j|jdd�|j|jdd�|j|jdd�|jt	��d	�|j�dj
|j
�dS)Nr)r�cs�j|�dS)N)r�)r�)r�rrr�%sz,SupervisordTests.test_tick.<locals>.callback)Znow��<ir�r�=r�i���rr)r�r�r�Z	TickEventrr=Ztickr0r�r.�	__class__Z
Tick5EventZTick60EventZ
Tick3600Event)r&r�r�r<rRr)r�r�	test_tick"s:
zSupervisordTests.test_tickN)*r2r3r4r9r;r=rSrUr`rdrfrjrqrsruryrzr~r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrr6rsN




Dzr6cCstjtjt�S)N)�unittestZ
findTestCasesr�modulesr2rrrr�
test_suiteFsr�__main__)ZdefaultTest)rr�rkrrr r"r�rrZsupervisor.tests.baserrrrrr	Zsupervisor.compatr
r5�ImportErrorZTestCaserr6rr2rrrrr�<module>s:
VY