+
    /O|j°
  ã                  ó  € R t ^ RIHt ^ RIHt ^ RIHt ^ RIHt ]R,          t	] ! R R]4      4       t
]! ]
4      t]! ]4       U Uu/ uF  w  rWbK	  	  upp t]
 Uu. uF  q"]
P                  Jg   K  VNK  	  uptR# u upp i u upi )	a"  
Scope definition and related utilities.

Those are defined here, instead of in the 'fixtures' module because
their use is spread across many other pytest modules, and centralizing it in 'fixtures'
would cause circular references.

Also this makes the module light to import, as it should.
)Úannotations)ÚEnum)Útotal_ordering)ÚLiteralc                  ól   € ] tR t^tRtRtRtRtRtRt	R R lt
R	 R
 ltR R lt]RR R ll4       tRtR# )ÚScopezÔ
Represents one of the possible fixture scopes in pytest.

Scopes are ordered from lower to higher, that is:

          ->>> higher ->>>

Function < Class < Module < Package < Session

          <<<- lower  <<<-
ÚfunctionÚclassÚmoduleÚpackageÚsessionc               ó   € V ^8„  d   QhRR/# ©é   Úreturnr   © )Úformats   "ÚFC:\Users\alokc\chatbot\backend\venv\Lib\site-packages\_pytest/scope.pyÚ__annotate__ÚScope.__annotate__*   s   € ÷ &ñ &˜Eñ &ó    c                ón   € \         V ,          pV^ 8X  d   \        V  R24      h\        V^,
          ,          # )zReturn the next lower scope.z is the lower-most scope)Ú_SCOPE_INDICESÚ
ValueErrorÚ_ALL_SCOPES©ÚselfÚindexs   & r   Ú
next_lowerÚScope.next_lower*   s5   € ä˜tÕ$ˆØ�AŒ:Ü ˜vÐ%=Ð>Ó?Ð?Ü˜5 1�9Õ%Ð%r   c               ó   € V ^8„  d   QhRR/# r   r   )r   s   "r   r   r   1   s   € ÷ &ñ &˜Uñ &r   c                ó–   € \         V ,          pV\        \         4      ^,
          8X  d   \        V  R24      h\        V^,           ,          # )zReturn the next higher scope.z is the upper-most scope)r   Úlenr   r   r   s   & r   Únext_higherÚScope.next_higher1   s@   € ä˜tÕ$ˆØ”CœÓ'¨!Õ+Ô+Ü ˜vÐ%=Ð>Ó?Ð?Ü˜5 1�9Õ%Ð%r   c               ó    € V ^8„  d   QhRRRR/# )r   Úotherr   r   Úboolr   )r   s   "r   r   r   8   s   € ÷ (ñ (˜Eð ( dñ (r   c                	ó>   € \         V ,          p\         V,          pW#8  # ©N)r   )r   r&   Ú
self_indexÚother_indexs   &&  r   Ú__lt__ÚScope.__lt__8   s   € Ü# DÕ)ˆ
Ü$ UÕ+ˆØÑ'Ð'r   Nc               ó(   € V ^8„  d   QhRRRRRRRR/# )	r   Ú
scope_nameÚ	ScopeNameÚdescrÚstrÚwherez
str | Noner   r   r   )r   s   "r   r   r   >   s,   € ÷ ñ Ø"ðØ+.ðØ7Aðà	ñr   c           	     óž   € ^ RI Hp  \        V4      pV#   \         d-    T! RP	                  Y#'       d   RT R2MRT4      RR7        X# i ; i)zö
Given a scope name from the user, return the equivalent Scope enum. Should be used
whenever we want to convert a user provided scope name to its enum object.

If the scope name is invalid, construct a user friendly message and call pytest.fail.
)Úfailz'{} {}got an unexpected scope value '{}'zfrom Ú Ú F)Úpytrace)Ú_pytest.outcomesr5   r   r   r   )Úclsr/   r1   r3   r5   Úscopes   &&&&  r   Ú	from_userÚScope.from_user=   sd   € õ 	*ð		ä˜*Ó%ˆEð ˆøô ô 	ÙØ9×@Ñ@Ø®u˜U 5 '¨Ñ+¸"¸jóð ö	ð ˆð	ús   ˆ •3AÁAr   r)   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__ÚFunctionÚClassÚModuleÚPackageÚSessionr   r#   r,   Úclassmethodr<   Ú__static_attributes__r   r   r   r   r      sE   † ñ
ð €HØ€EØ€FØ€GØ€Gõ&õ&õ(ð
 öó ôr   r   N)r   r   r
   r	   r   )rB   Ú
__future__r   Úenumr   Ú	functoolsr   Útypingr   r0   r   Úlistr   Ú	enumerater   rC   ÚHIGH_SCOPES)r   r;   Úxs   000r   Ú<module>rR      s—   ðñõ #å Ý $Ý ð ÐGÕH€	ð ô=ˆDó =ó ð=ñ@ �5‹k€Ù3<¸[Ô3IÔJÑ3I¡< 5�%’,Ñ3IÒJ€ñ  Ó;™%�Q¨E¯N©NÐ#:�qˆq™%Ñ;‚ùó	 Kùò <s   ÁA=ÁBÁ2B