+
    5mj,  c                   H   ^ RI t^ RIHu Ht ^ RIt^ RIHtH	t	 ^ RI
Ht ^ RIHtHtHt R R ltR R ltR	 R
 ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR R  ltR! R" ltR# R$ ltR% R& lt R' R( lt!R) R* lt"R+ R, lt#R# )-    N)AccountSnapshotHealthStatus)	WINDOW_7D)NoHealthyAccountErrorRoutingResolverRoutingRulesc                0    V ^8  d   QhR\         R\        /# )   kwargsreturn)objectr   )formats   "f/home/user/overdeck-private-tests/workstation-ai-broad2/modules/systray/tests/test_routing_resolver.py__annotate__r      s     	$ 	$ 	$L 	$    c            
      b    R RRRRRR/RRRRR.R	R
R^d/pVP                  V 4       \        R/ VB # )projectszync.isavi	automixerrafa	multidealroydefaultfallback_chainfallback_triggerbroken_or_quota_exhaustedquota_exhausted_threshold_pct )updater   )r
   defaultss   , r   
make_rulesr!      sP    Y{FKO65%.7'H OOF#(##r   c                    V ^8  d   QhRR/# r	   r   Nr   )r   s   "r   r   r      s     ! !T !r   c            	      l   \        \        4       R \        \        P                  ^^4      /R R0R7      p  V P                  R4       \        R4      h  \         d   p\        T4      p Rp?MRp?ii ; iRq3T9   qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR	\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR	/,          pR
RT/,          p\        \        P                  ! T4      4      hR;r4Rq3T9   qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR	\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR	/,          pR
RT/,          p\        \        P                  ! T4      4      hR;r4R q3T9  qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR	\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR	/,          pR
RT/,          p\        \        P                  ! T4      4      hR;r4R# )r   r   known_slugsr   expected NoHealthyAccountErrorNr   py1py3messageassert %(py5)spy5zunknown-accountinz%(py1)s in %(py3)snot inz%(py1)s not in %(py3)s)r   r!   r   r   OKresolveAssertionErrorr   str
@pytest_ar_call_reprcompare	_saferepr@py_builtinslocals_should_repr_global_name_format_explanationresolverexcr*   @py_assert0@py_assert2@py_format4@py_format6s          r   3test_project_override_rejects_unknown_registry_slugrE      s   	!Q78UOH?# =>> ! c(
 G55GG'''''''''''''''''''''''''''      6   6                  s   A A1A,,A1c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r   '   s     ' ' 'r   c                     \        \        4       R \        \        P                  ^^"4      R\        \        P                  ^^4      /4      p V P                  R4      pVP                  pR q2V8H  qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR	;p;rCVP                  pR
q2VJ qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR	;p;rCVP                   pR	q2VJ qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR	;p;rCR	# )r   r   r   py0routepy2r,   assert %(py7)spy7NF==z,%(py2)s
{%(py2)s = %(py0)s.slug
} == %(py5)sisz5%(py2)s
{%(py2)s = %(py0)s.fallback_used
} is %(py5)sz5%(py2)s
{%(py2)s = %(py0)s.fallback_from
} is %(py5)sr   r!   r   r   r3   r4   slugr7   r8   r:   r;   r<   r9   r5   r=   fallback_usedfallback_fromr?   rI   @py_assert1@py_assert4@py_assert3rD   @py_format8s          r   6test_project_override_returns_pinned_slug_when_healthyr]   '   s   ?<??B;OLOOQ:	
H Y'E:::55:'%'%'''''''''''5''''5''''''%''''''''&$&$&&&&&&&&&&&5&&&&5&&&&&&$&&&&&&&&r   c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r   7   s     ' ' 'r   c            	         \        \        4       R \        \        P                  ^^4      /0 RmR7      p V P                  R4      pVP                  pR q2V8H  qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR	;p;rCVP                  pR
q2VJ qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR	;p;rCVP                   pR	q2VJ qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR	;p;rCR	# )r   r%   unknown-projectrH   rI   rJ   r,   rK   rL   NF>   r   r   r   rM   rO   rP   rR   rS   rT   rX   s          r   6test_known_registry_slug_without_health_still_resolvesra   7   s   	!Q78*H ./E:::55:'%'%'''''''''''5''''5''''''%''''''''&$&$&&&&&&&&&&&5&&&&5&&&&&&$&&&&&&&&r   c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r   E   s        $  r   c                  P   \        \        4       R \        \        P                  RR4      R\        \        P
                  ^^4      R\        \        P
                  ^^4      /4      p  V P                  R4       \        R4      h  \         d   p\        T4      p Rp?MRp?ii ; iR q3T9   qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pR	R
T/,          p\        \        P                   ! T4      4      hR;r4Rq3T9   qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pR	R
T/,          p\        \        P                   ! T4      4      hR;r4Rq3T9  qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pR	R
T/,          p\        \        P                   ! T4      4      hR;r4Rq3T9  qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pR	R
T/,          p\        \        P                   ! T4      4      hR;r4R# )r   Nr   r   r   r'   r(   r)   r*   r+   r,   brokenr-   r/   r0   r2   r   r!   r   r   BROKENr3   r4   r5   r   r6   r7   r8   r9   r:   r;   r<   r=   r>   s          r   @test_unavailable_project_override_raises_without_global_fallbackrg   E   s   ?<#6#6dCOLOOQ:?<??Aq9	
H?# =>> ! c(
 G55GGw88ww      6   6                  55   'B B#BB#c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r   \   s     
' 
't 
'r   c            	         \        \        4       R \        \        P                  ^
^4      /4      p V P                  R4      pVP                  pR q2V8H  qD'       g   \        P                  ! R
V3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rCVP                  pR	q2VJ qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rCVP                   pRq2VJ qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rCR# )r   r`   rH   rI   rJ   r,   rK   rL   NFrM   rO   rP   rR   rS   rT   rX   s          r   5test_healthy_default_returns_default_without_fallbackrk   \   s   	"b9:H
 ./E:::55:'%'%'''''''''''5''''5''''''%''''''''&$&$&&&&&&&&&&&5&&&&5&&&&&&$&&&&&&&&r   c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r   i   s     ) )4 )r   c                  H   \        \        4       R \        \        P                  RR4      R\        \        P
                  ^!^,4      R\        \        P
                  ^7^B4      /4      p V P                  R4      pVP                  pRq2V8H  qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRR	V/,          p\        \        P                  ! V4      4      hR;p;rCVP                   pR
q2VJ qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRR	V/,          p\        \        P                  ! V4      4      hR;p;rCVP"                  pR q2V8H  qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRR	V/,          p\        \        P                  ! V4      4      hR;p;rCR# )r   Nr   r   rH   rI   rJ   r,   rK   rL   TrM   rO   rP   rR   z5%(py2)s
{%(py2)s = %(py0)s.fallback_from
} == %(py5)s)r   r!   r   r   rf   r3   r4   rU   r7   r8   r:   r;   r<   r9   r5   r=   rV   rW   rX   s          r   1test_broken_default_uses_first_available_fallbackro   i   s   OL$7$7tD?<??B;?<??B;	
H T"E:::55:&$&$&&&&&&&&&&&5&&&&5&&&&&&$&&&&&&&&(&(&(((((((((((5((((5((((((&((((((((r   c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r   z   s     ) ) )r   c                     \        \        4       R \        \        P                  ^d^4      R\        \        P                  ^c^c4      /4      p V P                  R4      pVP                  pRq2V8H  qD'       g   \        P                  ! R
V3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rCVP                  pR	q2VJ qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rCVP                   pR q2V8H  qD'       g   \        P                  ! R
V3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rCR# r   r   NrH   rI   rJ   r,   rK   rL   TrM   rO   rP   rR   rn   rT   rX   s          r   7test_quota_exhausted_default_uses_fallback_at_thresholdrs   z      OLOOS"=?<??B;	
H T"E:::55:&$&$&&&&&&&&&&&5&&&&5&&&&&&$&&&&&&&&(&(&(((((((((((5((((5((((((&((((((((r   c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r      s     + +T +r   c                  .   \        \        4       / 4      p  V P                  R 4       \        R4      h  \         d   p\        T4      p Rp?MRp?ii ; iRq3T9   qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pRRT/,          p\        \        P                  ! T4      4      hR;r4R	q3T9   qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pRRT/,          p\        \        P                  ! T4      4      hR;r4R
q3T9   qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pRRT/,          p\        \        P                  ! T4      4      hR;r4R# )r`   r'   Nrafa=missing-healthr(   r)   r*   r+   r,   zroy=missing-healthzavi=missing-healthr-   r/   )r   r!   r4   r5   r   r6   r7   r8   r9   r:   r;   r<   r=   r>   s          r   3test_missing_health_entry_is_treated_as_unavailablerx      so   z|R0H?*+ =>> ! c(
 !+G+++++ +++ ++++++G++++G++++++++*7**************7****7*********7**************7****7********s   2 AAAc                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r      s     ( ( (r   c                     \        \        4       R \        \        P                  RR4      R\        \        P
                  ^d^
4      R\        \        P
                  ^
^d4      /4      p  V P                  R4       \        R4      h  \         d   p\        T4      p Rp?MRp?ii ; iR q3T9   qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pR	R
T/,          p\        \        P                   ! T4      4      hR;r4Rq3T9   qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pR	R
T/,          p\        \        P                   ! T4      4      hR;r4Rq3T9   qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pR	R
T/,          p\        \        P                   ! T4      4      hR;r4Rq3T9   qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pR	R
T/,          p\        \        P                   ! T4      4      hR;r4Rq3T9   qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pR	R
T/,          p\        \        P                   ! T4      4      hR;r4R# )r   Nr   r   r`   r'   r(   r)   r*   r+   r,   rd   quota-exhaustedr-   r/   re   r>   s          r   7test_all_unavailable_raises_with_every_candidate_statusr|      se   OL$7$7tD?<??C<?<??B<	
H?*+ =>> ! c(
 W66WWG55GGG55GGw88ww'''''''''''''''''''''''''''rh   c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r      s     ) ) )r   c                  2   \        \        R \        ^
//R7      R \        \        P
                  ^
^ZRR7      R\        \        P
                  ^
^4      /R R0R7      p V P                  R4      pVP                  pRq2V8H  qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rCVP                   pRq2VJ qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rCVP"                  pR q2V8H  qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rCR# )r   account_caps  @qAsecondary_reset_atr   r%   NrH   rI   rJ   r,   rK   rL   TrM   rO   rP   rR   rn   )r   r!   r   r   r   r3   r4   rU   r7   r8   r:   r;   r<   r9   r5   r=   rV   rW   rX   s          r   6test_capped_account_is_skipped_and_chain_falls_throughr      s   )R 9:OLOORP\]?<??B;	
 UOH T"E:::55:&$&$&&&&&&&&&&&5&&&&5&&&&&&$&&&&&&&&(&(&(((((((((((5((((5((((((&((((((((r   c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r      s     , ,4 ,r   c            	          \        \        R \        ^
//^ZR7      R \        \        P
                  ^
^Z4      /R 0R7      p  V P                  R4       \        R4      h  \         d   p\        T4      p Rp?MRp?ii ; iRq3T9   qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pR	R
T/,          p\        \        P                   ! T4      4      hR;r4Rq3T9  qD'       g   \        P                  ! RT3RY234      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pR	R
T/,          p\        \        P                   ! T4      4      hR;r4R# )r   )r   r   r%   Nr'   capped(7d=10% left <= 10%)r(   r)   r*   r+   r,   r{   r-   r/   r0   r2   )r   r!   r   r   r   r3   r4   r5   r   r6   r7   r8   r9   r:   r;   r<   r=   r>   s          r   9test_capped_status_uses_describe_caps_not_quota_exhaustedr      sA    9b/2*,	

 OLOOR<	
 H	H? =>> ! c(
 (2722222'222'22222272222722222222+G++++++++++++++G++++G++++++++s   A A;&A66A;c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r      s     , ,4 ,r   c                     \        \        / R . R \        ^
//RR7      / R 0R7      p V P                  pR q!! V4      pRqCVJ qU'       g   \        P
                  ! RV3RW434      RR\        P                  ! 4       9   g   \        P                  ! V 4      '       d   \        P                  ! V 4      MRR\        P                  ! V4      R\        P                  ! V4      R	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;p;p;rT V P                  R4       \        R4      h  \         d   p\        T4      p	 Rp?MRp?ii ; iRqT	9   q'       g   \        P
                  ! RT3RY34      R\        P                  ! T
4      RR\        P                  ! 4       9   g   \        P                  ! T	4      '       d   \        P                  ! T	4      MR/,          pRRT/,          p\        \        P                  ! T4      4      hR;rR# )r   T)r   r   r   r   missing_health_is_availabler%   FrH   r?   rJ   py4py6py9assert %(py11)spy11Nr'   rw   r(   r)   r*   r+   r,   rP   )zS%(py6)s
{%(py6)s = %(py2)s
{%(py2)s = %(py0)s._is_available
}(%(py4)s)
} is %(py9)sr-   r/   )r   r!   r   _is_availabler7   r8   r:   r;   r<   r9   r5   r=   r4   r   r6   )r?   rY   r[   @py_assert5@py_assert8@py_assert7@py_format10@py_format12r@   r*   rA   rB   rC   rD   s                 r   1test_missing_health_does_not_admit_capped_accountr      ss    9b/2(,	
 	H
H !!2&2!&)2U2U22222)222222822228222!222&222)222U22222222? =>> ! c(
 !+G+++++ +++ ++++++G++++G++++++++s   E E?*E::E?c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r      s     ) )D )r   c                     \        \        4       R \        \        P                  ^d^4      R\        \        P                  ^c^c4      /4      p V P                  R4      pVP                  pRq2V8H  qD'       g   \        P                  ! R
V3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rCVP                  pR	q2VJ qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rCVP                   pR q2V8H  qD'       g   \        P                  ! R
V3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rCR# rr   rT   rX   s          r   2test_uncapped_quota_exhausted_regression_unchangedr      rt   r   c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r     s     *3 *3t *3r   c                  j   \         ^
/p \        / R. RV /R7      p\        VR\        \        P
                  R^XRR7      /R0R7      p\        VR\        \        P
                  R^ZRR7      /R0R7      pVP                  pRqT! V4      qfP                  pRqV8H  q'       Eg	   \        P                  ! RV	3RWx34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR	\        P                  ! V4      R
\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      /,          p
RRV
/,          p\        \        P                  ! V4      4      hR;p;p;p;p;r VP                  R4       \        R4      h  \          d   p\#        T4      p Rp?MRp?ii ; iRqT9   q'       g   \        P                  ! RT3RY34      R\        P                  ! T4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                  ! T4      MR/,          pRRT/,          p\        \        P                  ! T4      4      hR;rR# )
   zync2r   r   r   r   Nr   r   r%   rH   	availablerJ   r   r   py8r   zassert %(py13)spy13r'   r   r(   r)   r*   r+   r,   rM   )zh%(py8)s
{%(py8)s = %(py6)s
{%(py6)s = %(py2)s
{%(py2)s = %(py0)s.resolve
}(%(py4)s)
}.slug
} == %(py11)sr-   r/   )r   r!   r   r   r   r3   r4   rU   r7   r8   r:   r;   r<   r9   r5   r=   r   r6   )capsrulesr   refusedrY   r[   r   r   @py_assert10@py_assert9r   @py_format14r@   r*   rA   rB   rC   rD   s                     r   -test_zync2_remaining_cap_inversion_regressionr     s   r?Dt_	E  _#/		
 II _#/		
 IG 2T2T"2''272722222'222222922229222222T222"222'2227222222222? =>> ! c(
 (2722222'222'22222272222722222222s   4G G0G++G0c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r   /  s     4 4d 4r   c                     \        \        / R R.R \        ^
/R\        ^
//R7      R \        \        P
                  ^
^Z4      R\        \        P
                  ^
^_4      /R R0R7      p  V P                  R4       \        R4      h  \         d   pTP                  p Rp?MRp?ii ; iT P                  q3! T4      pRqTTJ qf'       Eg+   \        P                  ! RT3RYE34      RR\        P                  ! 4       9   g   \        P                  ! T 4      '       d   \        P                   ! T 4      MRR	\        P                   ! T4      R
R\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                   ! T4      MRR\        P                   ! T4      R\        P                   ! T4      /,          pRRT/,          p\        \        P"                  ! T4      4      hR;p;p;reR# )r   r   r   r%   Nr'   TrH   r?   rJ   r)   chainr,   r   assert %(py10)spy10rP   zV%(py5)s
{%(py5)s = %(py2)s
{%(py2)s = %(py0)s.all_cap_excluded
}(%(py3)s)
} is %(py8)s)r   r!   r   r   r   r3   r4   r5   r   r   all_cap_excludedr7   r8   r:   r;   r<   r9   r=   )	r?   r@   r   rY   rZ   r   @py_assert6@py_format9@py_format11s	            r   4test_all_cap_excluded_detects_every_candidate_cappedr   /  sT   !7 9b/59b/J		
 OLOOR<?<??B;	
 UOH? =>> ! 		
 $$3$U+3t3t33333+333333833338333$333333U3333U333+333t33333333s   &B B#BB#c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r   H  s     $ $t $r   c                     \        \        4       R \        \        P                  ^d^d4      R\        \        P                  ^d^d4      /4      p  V P                  R4       \        R4      h  \         d"   pTP                  p\        T4      p Rp?MRp?ii ; iT P                  qD! T4      pRqeTJ qw'       Eg+   \        P                  ! RT3RYV34      RR\        P                  ! 4       9   g   \        P                  ! T 4      '       d   \        P                   ! T 4      MRR\        P                   ! T4      RR	\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                   ! T4      MR	R
\        P                   ! T4      R\        P                   ! T4      /,          pRRT/,          p	\        \        P"                  ! T	4      4      hR;p;p;rvRqT9   q'       g   \        P                  ! RT3RY34      R\        P                   ! T
4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                   ! T4      MR/,          pRR
T/,          p\        \        P"                  ! T4      4      hR;rRqT9  q'       g   \        P                  ! RT3RY34      R\        P                   ! T
4      RR\        P                  ! 4       9   g   \        P                  ! T4      '       d   \        P                   ! T4      MR/,          pRR
T/,          p\        \        P"                  ! T4      4      hR;rR# )r   r   Nr'   FrH   r?   rJ   r)   r   r,   r   r   r   r{   r(   r*   r+   zcapped(rP   r   r-   r/   r0   r2   )r   r!   r   r   r3   r4   r5   r   r   r6   r   r7   r8   r:   r;   r<   r9   r=   )r?   r@   r   r*   rY   rZ   r   r   r   r   rA   rB   rC   rD   s                 r   =test_all_cap_excluded_false_when_quota_exhausted_without_capsr   H  s   OLOOS#>?<??C=	
H?
 =>>	 ! 		c( $$4$U+4u4u44444+444444844448444$444444U4444U444+444u44444444'''''''''''''''''''''''''''#G#####9###9######G####G########s   A( (B3BBc                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r   ^  s     V V Vr   c                      \        \        R \        ^
/R\        ^
//R7      R \        \        P
                  ^
^ZRR7      R\        \        P
                  ^
^_RR7      /4      p V P                  pRq!! V4      pRqCV8H  qU'       g   \        P                  ! RV3RW434      RR\        P                  ! 4       9   g   \        P                  ! V 4      '       d   \        P                  ! V 4      MRR	\        P                  ! V4      R
\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;p;p;rTR# )r   r   r   g     @@r   g     @@z1970-01-01T00:16:40ZrH   r?   rJ   r   r   r   r   r   N)r   r   rM   )z\%(py6)s
{%(py6)s = %(py2)s
{%(py2)s = %(py0)s.earliest_cap_resume_at
}(%(py4)s)
} == %(py9)s)r   r!   r   r   r   r3   earliest_cap_resume_atr7   r8   r:   r;   r<   r9   r5   r=   )r?   rY   r[   r   r   r   r   r   s           r   /test_earliest_cap_resume_at_uses_earliest_resetr   ^  s    B	2	
 OLOORPVW?<??BvV	
H **U?U*?;U?UU?UUUUUU;UUUUUU8UUUU8UUU*UUU?UUU;UUU?UUUUUUUUUUr   c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r   o  s     ) ) )r   c                     \        \        4       R \        \        P                  ^^4      R\        \        P                  ^^4      /R R0R 0R7      p V P                  R4      pVP                  pRq2V8H  qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRR	V/,          p\        \        P                  ! V4      4      hR;p;rCVP                  pR
q2VJ qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRR	V/,          p\        \        P                  ! V4      4      hR;p;rCVP                   pR q2V8H  qD'       g   \        P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRR	V/,          p\        \        P                  ! V4      4      hR;p;rCR# )r   r   r&   locked_slugsNrH   rI   rJ   r,   rK   rL   TrM   rO   rP   rR   rn   rT   rX   s          r   >test_locked_default_is_skipped_before_health_and_falls_throughr   o  s   OLOOQ:?<??Aq9	
 UOXH T"E:::55:&$&$&&&&&&&&&&&5&&&&5&&&&&&$&&&&&&&&(&(&(((((((((((5((((5((((((&((((((((r   c                    V ^8  d   QhRR/# r#   r   )r   s   "r   r   r     s     7 7D 7r   c                  `
   \        \        4       R \        \        P                  ^^4      R\        \        P                  ^^4      /R R0R 0R7      p \
        P                  ! \        4      ;_uu_ 4       pV P                  R4       RRR4       RpXP                  p\        V4      qBV9   qU'       Eg3   \        P                  ! RV3RW$34      R\        P                  ! V4      RR\        P                  ! 4       9   g!   \        P                   ! \        4      '       d   \        P                  ! \        4      MRR	R
\        P                  ! 4       9   g   \        P                   ! V4      '       d   \        P                  ! V4      MR
R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\#        \        P$                  ! V4      4      hR;p;p;r4V P&                  qP                  qP(                  q! V
4      pRqVJ q'       EgW   \        P                  ! RV3RW34      RR\        P                  ! 4       9   g   \        P                   ! V 4      '       d   \        P                  ! V 4      MRR\        P                  ! V4      RR
\        P                  ! 4       9   g   \        P                   ! V4      '       d   \        P                  ! V4      MR
R\        P                  ! V	4      R\        P                  ! V
4      R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\#        \        P$                  ! V4      4      hR;p;p	;p
;p;rV P*                  qP                  qP(                  q! V
4      pRqV8H  q'       EgW   \        P                  ! RV3RW34      RR\        P                  ! 4       9   g   \        P                   ! V 4      '       d   \        P                  ! V 4      MRR\        P                  ! V4      RR
\        P                  ! 4       9   g   \        P                   ! V4      '       d   \        P                  ! V4      MR
R\        P                  ! V	4      R\        P                  ! V
4      R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\#        \        P$                  ! V4      4      hR;p;p	;p
;p;rR#   + '       g   i     EL; i) r   r   r   r   Nz
avi=lockedr(   r)   r6   r   deniedr   r   r   r   TrH   r?   rJ   r,   rL   r   py12zassert %(py14)spy14r-   )zK%(py1)s in %(py8)s
{%(py8)s = %(py3)s(%(py6)s
{%(py6)s = %(py4)s.value
})
}rP   )z%(py9)s
{%(py9)s = %(py2)s
{%(py2)s = %(py0)s.all_locked
}(%(py7)s
{%(py7)s = %(py5)s
{%(py5)s = %(py3)s.value
}.chain
})
} is %(py12)sr   rM   )z%(py9)s
{%(py9)s = %(py2)s
{%(py2)s = %(py0)s.unlocked
}(%(py7)s
{%(py7)s = %(py5)s
{%(py5)s = %(py3)s.value
}.chain
})
} == %(py12)s)r   r!   r   r   r3   pytestraisesr   r4   valuer6   r7   r8   r9   r:   r;   r<   r5   r=   
all_lockedr   unlocked)r?   r   rA   r   r   rB   r   r   rY   rZ   r   r   @py_assert11r   @py_format13@py_format15s                   r   :test_locked_project_pin_is_not_replaced_by_global_fallbackr     s   ?<??Aq9OLOOQ:	
 FOWH 
,	-	-# 
. ,v||,3|,,,,,,,,<,,,<,,,,,,3,,,,3,,,,,,,v,,,,v,,,|,,,,,,,,,,,,:||:11:12:d:d:::::2::::::8::::8:::::::::v::::v:::|:::1:::2:::d:::::::::6\\6//6/06B6B666660666666866668666666666V6666V666\666/6660666B666666666 
.	-	-s   3TT-	)$builtinsr:   _pytest.assertion.rewrite	assertionrewriter7   r   health_clientr   r   limit_warningr   routing_resolverr   r   r   r!   rE   r]   ra   rg   rk   ro   rs   rx   r|   r   r   r   r   r   r   r   r   r   r   r   r   r   <module>r      s~       7 # Q Q	$!&' ' .
')") +(0)",.,2) *3Z42$,V")$7r   