Ë
    ·ðÜjƒ  ã                   óˆ   — d dl Z d dlmZmZmZ d dlmZmZ  G d„ de j                  «      Z	e
dk(  r e j                  «        yy)é    N)ÚJobLifecycleÚ	JobStatusÚInvalidTransition)ÚExecutionPolicyÚAdapterContractErrorc                   ó<   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
y	)
ÚLifecycleTestsc                 ó^  — t        d«      }|j                  t        j                  «       |j                  t        j                  «       |j                  t        j
                  «       | j                  |j                  t        j
                  «       | j                  |j                  «       y )Nzjob-1)
r   Ú
transitionr   ÚROUTEDÚRUNNINGÚ	COMPLETEDÚassertEqualÚstatusÚassertIsNotNoneÚfinished_at©ÚselfÚjobs     ú5/home/aria/aria-v3-dev/python/tests/test_lifecycle.pyÚtest_successful_lifecyclez(LifecycleTests.test_successful_lifecycle   ss   € Ü˜7Ó#ˆà�‰”y×'Ñ'Ô(Ø�‰”y×(Ñ(Ô)Ø�‰”y×*Ñ*Ô+à×ÑØ�J‰Jœ	×+Ñ+ô	
ð 	×Ñ˜SŸ_™_Õ-ó    c                 ó¬   — t        d«      }|j                  t        j                  «       | j	                  |j
                  t        j                  «       y )Nzjob-2)r   r   r   ÚBLOCKEDr   r   r   s     r   Útest_blocked_jobzLifecycleTests.test_blocked_job   s;   € Ü˜7Ó#ˆà�‰”y×(Ñ(Ô)à×ÑØ�J‰Jœ	×)Ñ)õ	
r   c                 óf  — t        d«      }|j                  t        j                  «       |j                  t        j                  «       |j                  t        j
                  «       | j                  t        «      5  |j                  t        j                  «       d d d «       y # 1 sw Y   y xY w)Nzjob-3)r   r   r   r   r   r   ÚassertRaisesr   r   s     r   Útest_completed_cannot_restartz,LifecycleTests.test_completed_cannot_restart%   sx   € Ü˜7Ó#ˆà�‰”y×'Ñ'Ô(Ø�‰”y×(Ñ(Ô)Ø�‰”y×*Ñ*Ô+à×ÑÔ0Ó1ñ 	.Ø�N‰Nœ9×,Ñ,Ô-÷	.÷ 	.ñ 	.ús   Á> B'Â'B0c                 ó¬   — t        d«      }| j                  t        «      5  |j                  t        j
                  «       d d d «       y # 1 sw Y   y xY w)Nzjob-4)r   r   r   r   r   r   r   s     r   Útest_invalid_direct_completionz-LifecycleTests.test_invalid_direct_completion/   sB   € Ü˜7Ó#ˆà×ÑÔ0Ó1ñ 	0Ø�N‰Nœ9×.Ñ.Ô/÷	0÷ 	0ñ 	0ús   ¡ A
Á
Ac                 óT   — t        d¬«      }| j                  |j                  d«       y )Néx   ©Útimeout_seconds)r   r   r$   )r   Úpolicys     r   Útest_timeout_policyz"LifecycleTests.test_timeout_policy5   s*   € Ü Øô
ˆð 	×ÑØ×"Ñ" Cõ	
r   c                 óp   — | j                  t        «      5  t        d¬«       d d d «       y # 1 sw Y   y xY w)Nr   r#   ©r   r   r   ©r   s    r   Útest_invalid_timeoutz#LifecycleTests.test_invalid_timeout>   s.   € Ø×ÑÔ3Ó4ñ 	/Ü¨AÕ.÷	/÷ 	/ñ 	/úó   –,¬5c                 óp   — | j                  t        «      5  t        d¬«       d d d «       y # 1 sw Y   y xY w)Né   )Úmax_attemptsr(   r)   s    r   Útest_retries_disabledz$LifecycleTests.test_retries_disabledB   s.   € Ø×ÑÔ3Ó4ñ 	,Ü¨Õ+÷	,÷ 	,ñ 	,úr+   c                 óp   — | j                  t        «      5  t        d¬«       d d d «       y # 1 sw Y   y xY w)NT)Úallow_side_effectsr(   r)   s    r   Útest_side_effects_disabledz)LifecycleTests.test_side_effects_disabledF   s.   € Ø×ÑÔ3Ó4ñ 	5Ü¨tÕ4÷	5÷ 	5ñ 	5úr+   N)Ú__name__Ú
__module__Ú__qualname__r   r   r   r    r&   r*   r/   r2   © r   r   r	   r	      s*   „ ò
.ò
ò.ò0ò
ò/ò,ó5r   r	   Ú__main__)ÚunittestÚaria_router.lifecycler   r   r   Úaria_router.adapter_contractr   r   ÚTestCaser	   r3   Úmainr6   r   r   ú<module>r=      sD   ðÛ ÷ñ ÷
ô:5�X×&Ñ&ô :5ðz ˆzÒØ€H‡M�M…Oð r   