+
    ie*                        ^ RI Ht ^ RIt^ RIt^ RIt^ RIHt ^ RIHt ^ RIHt ^ RI	H	t	 ^ RI	H
t
 ^RIHt ^R	IHt  ^ R
IHt ^ RIHt ^ RIHt ]! RRR7      t]! RRR7      tRt]! ]RJR4       ! R R]4      4       t]! ]RJR4       ! R R]4      4       t]R8X  d   ]P0                  ! 4        R# R#   ] d
    R;t;tt L]i ; i)    )print_functionN)partial)
skipUnless)skipIf)greenlet)
getcurrent)TestCase)PY314)Context)
ContextVar)copy_contextid)defaultvarzContextVar not supportedc                   h   a  ] tR t^!t o R tR tR tR tR tR t	R t
R tR	 tR
 tR tR tRtV tR# )ContextVarsTestsc                6    \        4       P                  ! V/ VB # N)r   run)selfargskwargss   &*,yC:\Users\petid\OneDrive\Desktop\Maestro\MAESTRO\maestro-backend\venv\Lib\site-packages\greenlet/tests/test_contextvars.py_new_ctx_runContextVarsTests._new_ctx_run#   s    ~!!42622    c                2   \         pVf!   V P                  VP                  4       4       M V P                  VP                  4       V4       VP	                  V4       \        ^4       F,  pW5P                  4       ;;,          ^,          uu&   V! 4        K.  	  R # r   )ID_VARassertIsNonegetassertEqualsetrange)r   greenlet_idcallbackcountsexpectctx_var_s   &&&&&  r   
_incrementContextVarsTests._increment&   si    >gkkm,W[[]F3K qA;;=!Q&!J r   c                   \         P                  ^ 4       \        4       P                  p\	        R \        ^4       4       4      p\        ^^4       Uu. uFn  p\        \        VR8X  d)   \        \        4       P                  V P                  4      MV P                  TTTVR8X  d
   V^,
          M
VR9   d   ^ MRR7      4      NKp  	  ppV F=  pVR8X  d   \        4       Vn        K  VR8X  g   K$  \        4       P                  Vn        K?  	  \        ^4       FC  pV\         P                  4       ;;,          ^,          uu&   V F  pVP                  4        K  	  KE  	  VR8X  d$   \        V4       F  pVP                  4        K  	  MV F  pVP                  4        K  	  V F]  pV P                  VP                  4       VR8X  d   V P!                  VP                  4       KB  V P#                  VP                  4       K_  	  VR8X  d   V P%                  V^ ^^^^^^^^^/4       R# V P%                  \        VP'                  4       4      \        ^.4      4       R# u upi )r   c              3   (   "   T F  q^ 3x  K
  	  R# 5i)r   N ).0is   & r   	<genexpr>1ContextVarsTests._test_context.<locals>.<genexpr>6   s     /h!fhs   r   sharer"   N)r$   r%   r&   r'   )r"   r   )r   r"   r   switchdictr#   r   r   r   r   r*   
gr_contextr    reversed
assertTruedeadr   assertIsNotNoner!   values)r   propagate_byr%   r&   r0   letslets   &&     r   _test_contextContextVarsTests._test_context1   s   

1<&&/eAh//  1a[
 ! W "U*  N&&OO 15!)W4AE%7AT  ! 	 
" Cu$!-(!+!8!8	  qA6::< A% 

  
 5 ~

 & 

  COOCHH%
 u$!!#..1$$S^^4  7"VaAq!Q1a%CDS13s8<i
s   A4Ic                >    V P                  V P                  R 4       R# )r   Nr   r?   r   s   &r   &test_context_propagated_by_context_run7ContextVarsTests.test_context_propagated_by_context_runn       $,,e4r   c                >    V P                  V P                  R 4       R# )r"   NrB   rC   s   &r   ,test_context_propagated_by_setting_attribute=ContextVarsTests.test_context_propagated_by_setting_attributeq   rF   r   c                >    V P                  V P                  R 4       R # r   rB   rC   s   &r   test_context_not_propagated,ContextVarsTests.test_context_not_propagatedt   s    $,,d3r   c                >    V P                  V P                  R 4       R# )r3   NrB   rC   s   &r   test_context_shared$ContextVarsTests.test_context_sharedw   s    $,,g6r   c                &   \        \        4       P                  4      p\        \        4       P                  4      pVP                  \	        4       P                  4       VP                  \	        4       P                  4       VP                  4        R # r   )r   r   r   r4   r   r   let1let2s   &  r   test_break_ctxvars#ContextVarsTests.test_break_ctxvarsz   sY    **+**+JL''(JL''( 	r   c                6   \        \        4       P                  4      p\        \        4       P                  4      p\        4       Vn        \        4       Vn        VP                  4        VP                  4        VP                  4        VP                  4        R # r   )r   r   r4   r   r6   rQ   s   &  r   9test_not_broken_if_using_attribute_instead_of_context_runJContextVarsTests.test_not_broken_if_using_attribute_instead_of_context_run   s\    
++,
++,&.&.r   c                p  a a \         P                  R 4       VV 3R lp\        V4      oS P                  \        R4      ;_uu_ 4        S=R R R 4       S P                  SP
                  4       SP                  4       w  r#S P                  VSP
                  4       S P                  V\         ,          ^4       S P                  V\         ,          ^4       S P                  VP                  \         P                  4      ^4       VSn        SP                  4        S P                  SP
                  V4       R Sn        SP                  4        S P                  SP
                  V4       R Sn        SP                  4        S P                  SP
                  4       R o\        P                  ! 4        S P                  \        P                  ! V4      \         '       g   ^M^4       S P                  \        P                  ! V4      \         '       g	   ^4       R # ^4       R #   + '       g   i     EL; i)Nc                    < SP                  \        P                  4       4       SP                  SP                  4       \        P	                  ^4       SP                  SP                  \        4       SP                  \        P                  4       ^4       SP                  SP                  \        ,          ^4       SP                  p RSn        SP                  \        P                  4       4       SP                  SP                  4       \        P	                  ^4       SP                  SP                  \        4       SP                  \        P                  4       ^4       SP                  SP                  \        ,          ^4       SP                  p\        4       P                  P                  W34       SP                  \        P                  4       ^4       VSn        SP                  \        P                  4       ^4       \        4       P                  P                  4        SP                  \        P                  4       4       SP                  SP                  4       V Sn        SP                  \        P                  4       ^4       \        4       P                  P                  4        SP                  \        P                  4       4       SP                  SP                  4       R#    N)r   r   r    r6   r"   assertIsInstancer   r!   r   parentr4   )old_contextnew_contextgrr   s     r   targetFContextVarsTests.test_context_assignment_while_running.<locals>.target   s   fjjl+bmm, JJqM!!"--9VZZ\1-R]]62A6 --K BMfjjl+bmm,JJqM!!"--9VZZ\1-R]]62A6--KL&&'AB VZZ\1-'BMVZZ\1-L&&(fjjl+bmm,'BMVZZ\1-L&&(fjjl+bmm,r   zcan't delete context attribute)r   r"   r   assertRaisesRegexAttributeErrorr6   r   r4   assertIsr!   r   r    gccollectsysgetrefcountr
   )r   rb   r_   r`   ra   s   f   @r   %test_context_assignment_while_running6ContextVarsTests.test_context_assignment_while_running   s   

4'	-R f##N4TUU V 	"--(#%99; k2==1V,a0V,a04a8#
		bmm[1
		bmm[1
		"--( 


 	5q1M5qM1M3 VUUs   H$$H5	c                X  aaaaa	a
a ^ RI p\        P                  R4       \        4       oVP	                  4       o	VP	                  4       oVP	                  4       oVP	                  4       o
. oVV	V3R loVVVVV
3R lpVP                  VRR7      pVP                  4        S	P                  ^
4       S^ ,          pV P                  \        R4      ;_uu_ 4        \        VR4       RRR4       V P                  \        R4      ;_uu_ 4        RVn        RRR4       SP                  4        SP                  ^
4       V P                  VP                  S4       V P                  VP                  \        ,          ^4       RVn        S
P                  4        VP                  ^
4       V P                  SVR.4       V P                  VP                  4       SVn        V P                  VP                  S4       SR RpRpR#   + '       g   i     EL&; i  + '       g   i     EL; i)	r   Nc                  (  < \         P                  ^4       SP                  4        SP                  ^
4       \         P                  ^4       \        4       P                  P                  4        S P                  \         P                  4       4       R# r[   )VAR_VARr"   waitr   r^   r4   appendr    )holder
is_runningshould_suspends   r   greenlet_in_thread_fnXContextVarsTests.test_context_assignment_different_thread.<locals>.greenlet_in_thread_fn   sW    KKNNN#KKNL&&(MM'++-(r   c                     < \        S4      p SV n        SP                  V 4       V P                  4        SP	                  4        SP                  ^
4       V P                  4        ? \        4        R# )
   N)r   r6   rq   r4   r"   rp   )ra   ctxdid_suspendru   rr   should_exits    r   	thread_fnLContextVarsTests.test_context_assignment_different_thread.<locals>.thread_fn   sS    /0BBMMM"IIKOOR IIKJr   T)rb   daemonzrunning in a differentr6   :NNN)	threadingro   r"   r   EventThreadstartrp   rd   
ValueErrorgetattrr6   rf   r!   joinr   )r   r   r|   threadra   ry   rz   ru   rr   rs   r{   rt   s   &    @@@@@@@r   (test_context_assignment_different_thread9ContextVarsTests.test_context_assignment_different_thread   s   Di__&
"*oo'oo'	)		 		 !!4!@AY ##J0HIIB% J##J0HII BM J 	 	bmmS)w/3B"d, 	"--(bmmS) 1I7 JIIIIIs   HHH	H)	c                    \        4       pV P                  \        R 4      ;_uu_ 4        Wn        RRR4       R#   + '       g   i     R# ; i)z6greenlet context must be a contextvars.Context or NoneN)r   rd   	TypeErrorr6   )r   gs   & r   "test_context_assignment_wrong_type3ContextVarsTests.test_context_assignment_wrong_type  sA    J##I$\^ ^L^ ^ ^ ^s	   :A	r.   N)__name__
__module____qualname____firstlineno__r   r*   r?   rD   rH   rK   rN   rT   rW   rk   r   r   __static_attributes____classdictcell____classdict__s   @r   r   r   !   sL     3	;=z5547HNT@D   r   r   zContextVar supportedc                   &   a  ] tR tRt o R tRtV tR# )NoContextVarsTestsi!  c                   \        \        4       P                  4      pV P                  \	        VR 4      4       V P                  \        4      ;_uu_ 4        \        VR 4       RRR4       V P                  \        4      ;_uu_ 4        RVn        RRR4       VP                  4        V P                  \        4      ;_uu_ 4        \        VR 4       RRR4       V P                  \        4      ;_uu_ 4        RVn        RRR4       ?R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Lf; i  + '       g   i     ?R# ; i)r6   N)	r   r   r4   assertFalsehasattrassertRaisesre   r   r6   )r   rR   s   & r   test_contextvars_errors*NoContextVarsTests.test_contextvars_errors#  s    
++,|45~..D,' / ~.."DO / 	~..D,' / ~.."DO /  /. /.
 /. /. s0   D
DD07E
D	D-	0E 	E	r.   N)r   r   r   r   r   r   r   r   s   @r   r   r   !  s      r   r   __main__)
__future__r   rg   ri   unittest	functoolsr   r   r   r   r    r	   r
   contextvarsr   r   r   r   ro   ImportErrorr   r   r   mainr.   r   r   <module>r      s    % 	 
        /#&( d+F-GJ
 G4!;<| x |  =| ~ t34  5* zMMO u  /*..G.j</s   (B4 4CC