+
    -j@                       R t ^ RIHt ^ RIt^ RIH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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I$H't' ^ RI(H)t) ^ RI*H+t+ ]'       d   ^ RI,t,]
 ! R R4      4       t- ! R R4      t.]
]P^                   ! R R 4      4       4       t0 ! R! R"4      t1R# R$ lt2R% R& lt3R' R( lt4R) R* lt5R+ R, lt6R- R. lt7R/ R0 lt8R1 R2 lt9R3 R4 lt:R5 R6 lt;]! R7R87      R9 R: l4       t<]R; R< l4       t=]R= R> l4       t>R# )?z?Add backward compatibility support for the legacy py path type.)annotationsN)Path)Final)final)TYPE_CHECKING)SectionWrapper)Cache)LEGACY_PATHlegacy_path)Config)hookimpl)PytestPluginManager)check_ispytest)fixture)FixtureRequest)Session)MonkeyPatch)	Collector)Item)Node)HookRecorder)Pytester)	RunResult)TerminalReporter)TempPathFactoryc                     ] tR t^)t$ RtRt]P                  tR]R&   ]P                  t	R]R&   RR/R R llt
]R	 R
 l4       t]R R l4       t]R 4       t]R 4       t]P                   R 4       t]R R l4       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' R( lltR) R* ltR+ R, ltR[R- R. lltR/ R0 lt R1 t!R2 R3 lt"R4 t#R5 t$R6 t%R7R\R8R/R9 R: llt&R; R< lt'R= R> lt(R? R@ lt)RA RB lt*R]RC lt+RD t,R^RE lt-RF RG lt.]/P`                  ]/P`                  ]3RH lt1RIR&RJ]/RK RL llt2RM RN lt3RO t4RIR&/RP RQ llt5R_RR RS llt6R_RT RU llt7RV RW lt8RX RY lt9RZt:R&# )`Testdirz
Similar to :class:`Pytester`, but this class works with legacy legacy_path objects instead.

All methods just forward to an internal :class:`Pytester` instance, converting results
to `legacy_path` objects as necessary.
Fr   CLOSE_STDINTimeoutExpired	_ispytestc               $    V ^8  d   QhRRRRRR/# )   pytesterr   r    boolreturnNone )formats   "g/Users/mitch_tango/dev/rabbit-r1-livekit/agent/.venv/lib/python3.14/site-packages/_pytest/legacypath.py__annotate__Testdir.__annotate__7   s!     " " " "$ "    c               	(    \        V4       Wn        R # N)r   	_pytester)selfr#   r    s   &&$r)   __init__Testdir.__init__7   s    y!!r,   c                   V ^8  d   QhRR/# r"   r%   r	   r'   )r(   s   "r)   r*   r+   <   s     0 0 0r,   c                @    \        V P                  P                  4      # )z-Temporary directory where tests are executed.)r   r/   pathr0   s   &r)   tmpdirTestdir.tmpdir;   s     4>>..//r,   c                   V ^8  d   QhRR/# r4   r'   )r(   s   "r)   r*   r+   A   s     9 9k 9r,   c                	@    \        V P                  P                  4      # r.   )r   r/   _test_tmprootr7   s   &r)   test_tmprootTestdir.test_tmproot@   s    4>>7788r,   c                	.    V P                   P                  # r.   )r/   _requestr7   s   &r)   requestTestdir.requestD   s    ~~&&&r,   c                	.    V P                   P                  # r.   r/   pluginsr7   s   &r)   rE   Testdir.pluginsH   s    ~~%%%r,   c                	&    WP                   n        R # r.   rD   )r0   rE   s   &&r)   rE   rF   L   s    !(r,   c                   V ^8  d   QhRR/# )r"   r%   r   r'   )r(   s   "r)   r*   r+   Q   s     + +[ +r,   c                	.    V P                   P                  # r.   )r/   _monkeypatchr7   s   &r)   monkeypatchTestdir.monkeypatchP   s    ~~***r,   c                   V ^8  d   QhRR/# )r"   r%   r   r'   )r(   s   "r)   r*   r+   T   s     @ @< @r,   c                8    V P                   P                  V4      # )z(See :meth:`Pytester.make_hook_recorder`.)r/   make_hook_recorder)r0   pluginmanagers   &&r)   rO   Testdir.make_hook_recorderT   s    ~~00??r,   c                   V ^8  d   QhRR/# r"   r%   r&   r'   )r(   s   "r)   r*   r+   X   s     & &t &r,   c                6    V P                   P                  4       # )zSee :meth:`Pytester.chdir`.)r/   chdirr7   s   &r)   rU   Testdir.chdirX   s    ~~##%%r,   c                   V ^8  d   QhRR/# rS   r'   )r(   s   "r)   r*   r+   \   s     * *$ *r,   c                	6    V P                   P                  4       # r.   )r/   	_finalizer7   s   &r)   finalizeTestdir.finalize\   s    ~~''))r,   c                   V ^8  d   QhRR/# r4   r'   )r(   s   "r)   r*   r+   _   s     
J 
J 
Jr,   c                    V'       d!   VP                  R4      '       g
   RV,           p\        V P                  P                  ! V.VO5/ VB 4      # )zSee :meth:`Pytester.makefile`..)
startswithr   r/   makefile)r0   extargskwargss   &&*,r)   r`   Testdir.makefile_   sB    s~~c** )C4>>223HHHIIr,   c                   V ^8  d   QhRR/# r4   r'   )r(   s   "r)   r*   r+   k   s     @ @k @r,   c                J    \        V P                  P                  V4      4      # )z"See :meth:`Pytester.makeconftest`.)r   r/   makeconftestr0   sources   &&r)   rg   Testdir.makeconftestk   s    4>>66v>??r,   c                   V ^8  d   QhRR/# r4   r'   )r(   s   "r)   r*   r+   o   s     ; ; ;r,   c                J    \        V P                  P                  V4      4      # )zSee :meth:`Pytester.makeini`.)r   r/   makeinirh   s   &&r)   rm   Testdir.makeinio   s    4>>11&9::r,   c                    V ^8  d   QhRRRR/# )r"   ri   strr%   r   r'   )r(   s   "r)   r*   r+   s   s     0 0 0 0r,   c                8    V P                   P                  V4      # )zSee :meth:`Pytester.getinicfg`.)r/   	getinicfgrh   s   &&r)   rr   Testdir.getinicfgs       ~~''//r,   c                   V ^8  d   QhRR/# r4   r'   )r(   s   "r)   r*   r+   w   s     E E; Er,   c                J    \        V P                  P                  V4      4      # )z'See :meth:`Pytester.makepyprojecttoml`.)r   r/   makepyprojecttomlrh   s   &&r)   rw   Testdir.makepyprojecttomlw   s    4>>;;FCDDr,   c                   V ^8  d   QhRR/# r4   r'   )r(   s   "r)   r*   r+   {   s     G G[ Gr,   c                L    \        V P                  P                  ! V/ VB 4      # )z See :meth:`Pytester.makepyfile`.)r   r/   
makepyfiler0   rb   rc   s   &*,r)   r{   Testdir.makepyfile{   s!    4>>44dEfEFFr,   c                   V ^8  d   QhRR/# r4   r'   )r(   s   "r)   r*   r+      s     H Hk Hr,   c                L    \        V P                  P                  ! V/ VB 4      # )z!See :meth:`Pytester.maketxtfile`.)r   r/   maketxtfiler|   s   &*,r)   r   Testdir.maketxtfile   s!    4>>55tFvFGGr,   Nc                   V ^8  d   QhRR/# rS   r'   )r(   s   "r)   r*   r+      s     2 2$ 2r,   c                8    V P                   P                  V4      # )z#See :meth:`Pytester.syspathinsert`.)r/   syspathinsertr0   r6   s   &&r)   r   Testdir.syspathinsert   s    ~~++D11r,   c                   V ^8  d   QhRR/# r4   r'   )r(   s   "r)   r*   r+      s     7 7[ 7r,   c                J    \        V P                  P                  V4      4      # )zSee :meth:`Pytester.mkdir`.)r   r/   mkdirr0   names   &&r)   r   Testdir.mkdir   s    4>>//566r,   c                   V ^8  d   QhRR/# r4   r'   )r(   s   "r)   r*   r+      s     9 9{ 9r,   c                J    \        V P                  P                  V4      4      # )zSee :meth:`Pytester.mkpydir`.)r   r/   mkpydirr   s   &&r)   r   Testdir.mkpydir   s    4>>11$788r,   c                   V ^8  d   QhRR/# r4   r'   )r(   s   "r)   r*   r+      s     > > >r,   c                J    \        V P                  P                  V4      4      # )z"See :meth:`Pytester.copy_example`.)r   r/   copy_exampler   s   &&r)   r   Testdir.copy_example   s    4>>66t<==r,   c                    V ^8  d   QhRRRR/# )r"   configr   r%   Item | Collector | Noner'   )r(   s   "r)   r*   r+      s     3 3f 3.E 3r,   c                8    V P                   P                  W4      # )zSee :meth:`Pytester.getnode`.)r/   getnode)r0   r   args   &&&r)   r   Testdir.getnode   s    ~~%%f22r,   c                8    V P                   P                  V4      # )z!See :meth:`Pytester.getpathnode`.)r/   getpathnoder   s   &&r)   r   Testdir.getpathnode   s    ~~))$//r,   c                    V ^8  d   QhRRRR/# )r"   colitemszlist[Item | Collector]r%   z
list[Item]r'   )r(   s   "r)   r*   r+      s     1 1!7 1J 1r,   c                8    V P                   P                  V4      # )zSee :meth:`Pytester.genitems`.)r/   genitems)r0   r   s   &&r)   r   Testdir.genitems   s    ~~&&x00r,   c                8    V P                   P                  V4      # )zSee :meth:`Pytester.runitem`.)r/   runitemrh   s   &&r)   r   Testdir.runitem   s    ~~%%f--r,   c                >    V P                   P                  ! V.VO5!  # )z&See :meth:`Pytester.inline_runsource`.)r/   inline_runsource)r0   ri   cmdlineargss   &&*r)   r   Testdir.inline_runsource   s    ~~..vDDDr,   c                6    V P                   P                  ! V!  # )z%See :meth:`Pytester.inline_genitems`.)r/   inline_genitemsr0   rb   s   &*r)   r   Testdir.inline_genitems   s    ~~--t44r,   rE   no_reraise_ctrlcc                   V ^8  d   QhRR/# )r"   r   r$   r'   )r(   s   "r)   r*   r+      s     
 
d 
r,   c               >    V P                   P                  ! VRVRV/ # )z See :meth:`Pytester.inline_run`.rE   r   )r/   
inline_run)r0   rE   r   rb   s   &$$*r)   r   Testdir.inline_run   s,    ~~((
"
5E
 	
r,   c                   V ^8  d   QhRR/# r"   r%   r   r'   )r(   s   "r)   r*   r+      s     C Ci Cr,   c                :    V P                   P                  ! V/ VB # )z)See :meth:`Pytester.runpytest_inprocess`.)r/   runpytest_inprocessr|   s   &*,r)   r   Testdir.runpytest_inprocess   s    ~~114B6BBr,   c                   V ^8  d   QhRR/# r   r'   )r(   s   "r)   r*   r+      s     9 9I 9r,   c                :    V P                   P                  ! V/ VB # )zSee :meth:`Pytester.runpytest`.)r/   	runpytestr|   s   &*,r)   r   Testdir.runpytest   s    ~~''888r,   c                   V ^8  d   QhRR/# r"   r%   r   r'   )r(   s   "r)   r*   r+      s     1 1F 1r,   c                6    V P                   P                  ! V!  # )z!See :meth:`Pytester.parseconfig`.)r/   parseconfigr   s   &*r)   r   Testdir.parseconfig   s    ~~))400r,   c                   V ^8  d   QhRR/# r   r'   )r(   s   "r)   r*   r+      s     4 4v 4r,   c                6    V P                   P                  ! V!  # )z$See :meth:`Pytester.parseconfigure`.)r/   parseconfigurer   s   &*r)   r   Testdir.parseconfigure   s    ~~,,d33r,   c                8    V P                   P                  W4      # )zSee :meth:`Pytester.getitem`.)r/   getitem)r0   ri   funcnames   &&&r)   r   Testdir.getitem   s    ~~%%f77r,   c                8    V P                   P                  V4      # )zSee :meth:`Pytester.getitems`.)r/   getitemsrh   s   &&r)   r   Testdir.getitems   s    ~~&&v..r,   c                <    V P                   P                  WVR7      # )z"See :meth:`Pytester.getmodulecol`.)
configargswithinit)r/   getmodulecol)r0   ri   r   r   s   &&&&r)   r   Testdir.getmodulecol   s#    ~~**H + 
 	
r,   c               $    V ^8  d   QhRRRRRR/# )r"   modcolr   r   rp   r%   r   r'   )r(   s   "r)   r*   r+      s"     < <i <s <?V <r,   c                8    V P                   P                  W4      # )z%See :meth:`Pytester.collect_by_name`.)r/   collect_by_name)r0   r   r   s   &&&r)   r   Testdir.collect_by_name   s    ~~--f;;r,   c                >    V P                   P                  ! WW43/ VB # )zSee :meth:`Pytester.popen`.)r/   popen)r0   cmdargsstdoutstderrstdinkws   &&&&&,r)   r   Testdir.popen   s      ~~##GVIbIIr,   timeoutr   c                   V ^8  d   QhRR/# r   r'   )r(   s   "r)   r*   r+      s     J J	 Jr,   c               >    V P                   P                  ! VRVRV/ # )zSee :meth:`Pytester.run`.r   r   )r/   run)r0   r   r   r   s   &$$*r)   r   Testdir.run   s!    ~~!!7IGI5IIr,   c                   V ^8  d   QhRR/# r   r'   )r(   s   "r)   r*   r+      s     0 09 0r,   c                8    V P                   P                  V4      # )zSee :meth:`Pytester.runpython`.)r/   	runpython)r0   scripts   &&r)   r   Testdir.runpython   rt   r,   c                8    V P                   P                  V4      # )z!See :meth:`Pytester.runpython_c`.)r/   runpython_c)r0   commands   &&r)   r   Testdir.runpython_c   s    ~~))'22r,   c                   V ^8  d   QhRR/# r   r'   )r(   s   "r)   r*   r+      s     K K9 Kr,   c               :    V P                   P                  ! VRV/ # )z*See :meth:`Pytester.runpytest_subprocess`.r   )r/   runpytest_subprocess)r0   r   rb   s   &$*r)   r   Testdir.runpytest_subprocess   s    ~~22DJ'JJr,   c               $    V ^8  d   QhRRRRRR/# )r"   stringrp   expect_timeoutfloatr%   pexpect.spawnr'   )r(   s   "r)   r*   r+      s&     R R3 R R Rr,   c                :    V P                   P                  WR7      # )z"See :meth:`Pytester.spawn_pytest`.r   )r/   spawn_pytest)r0   r   r   s   &&&r)   r   Testdir.spawn_pytest   s    ~~**6*QQr,   c               $    V ^8  d   QhRRRRRR/# )r"   cmdrp   r   r   r%   r   r'   )r(   s   "r)   r*   r+      s&     H H He H} Hr,   c                :    V P                   P                  WR7      # )zSee :meth:`Pytester.spawn`.r   )r/   spawn)r0   r   r   s   &&&r)   r   Testdir.spawn   s    ~~##C#GGr,   c                   V ^8  d   QhRR/# r"   r%   rp   r'   )r(   s   "r)   r*   r+      s     , ,# ,r,   c                	$    R V P                   : R2# )z	<Testdir >)r8   r7   s   &r)   __repr__Testdir.__repr__   s    4;;/++r,   c                   V ^8  d   QhRR/# r   r'   )r(   s   "r)   r*   r+      s          r,   c                	,    \        V P                  4      # r.   )rp   r8   r7   s   &r)   __str__Testdir.__str__   s    4;;r,   )r/   r.   r'   )	test_func)r'   F)g      $@);__name__
__module____qualname____firstlineno____doc____test__r   r   __annotations__r   r1   propertyr8   r=   rA   rE   setterrK   rO   rU   rZ   r`   rg   rm   rr   rw   r{   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   
subprocessPIPEr   r   r   r   r   r   r   r  r  __static_attributes__r'   r,   r)   r   r   )   s    H!--K-$33NE3" " 0 0 9 9 ' ' & & ^^) ) + +@&*
J@;0EGH279>301.E5
 
U 
C9148/
< 	JJD J J03K$ KRH,   r,   r   c                  6    ] tR t^t]]R R l4       4       tRtR# )LegacyTestdirPluginc                    V ^8  d   QhRRRR/# )r"   r#   r   r%   r   r'   )r(   s   "r)   r*    LegacyTestdirPlugin.__annotate__   s     1 1( 1w 1r,   c                    \        V RR7      # )z
Identical to :fixture:`pytester`, and provides an instance whose methods return
legacy ``LEGACY_PATH`` objects instead when applicable.

New code should avoid using :fixture:`testdir` in favor of :fixture:`pytester`.
Tr    )r   )r#   s   &r)   testdirLegacyTestdirPlugin.testdir   s     x400r,   r'   N)r
  r  r  r  staticmethodr   r  r  r'   r,   r)   r  r     s    1  1r,   r  c                  V    ] tR tRt$ RtR]R&   RR/R R lltRR	 R
 lltR R ltRt	R# )TempdirFactoryi
  zBackward compatibility wrapper that implements ``py.path.local``
for :class:`TempPathFactory`.

.. note::
    These days, it is preferred to use ``tmp_path_factory``.

    :ref:`About the tmpdir and tmpdir_factory fixtures<tmpdir and tmpdir_factory>`.

r   _tmppath_factoryr    Fc               $    V ^8  d   QhRRRRRR/# )r"   tmppath_factoryr   r    r$   r%   r&   r'   )r(   s   "r)   r*   TempdirFactory.__annotate__  s$     0 0.0>B0	0r,   c               	(    \        V4       Wn        R # r.   )r   r!  )r0   r#  r    s   &&$r)   r1   TempdirFactory.__init__  s     	y! /r,   c               $    V ^8  d   QhRRRRRR/# )r"   basenamerp   numberedr$   r%   r	   r'   )r(   s   "r)   r*   r$    s&     W Ws Wd Wk Wr,   c                f    \        V P                  P                  W4      P                  4       4      # )zOSame as :meth:`TempPathFactory.mktemp`, but returns a ``py.path.local`` object.)r   r!  mktempresolve)r0   r(  r)  s   &&&r)   r+  TempdirFactory.mktemp  s'    40077KSSUVVr,   c                   V ^8  d   QhRR/# r4   r'   )r(   s   "r)   r*   r$  #  s     J J[ Jr,   c                d    \        V P                  P                  4       P                  4       4      # )zTSame as :meth:`TempPathFactory.getbasetemp`, but returns a ``py.path.local`` object.)r   r!  getbasetempr,  r7   s   &r)   r0  TempdirFactory.getbasetemp#  s%    400<<>FFHIIr,   )r!  N)T)
r
  r  r  r  r  r  r1   r+  r0  r  r'   r,   r)   r   r   
  s.     &%0EJ0WJ Jr,   r   c                  d    ] tR tRt]]! RR7      R R l4       4       t]]R R l4       4       tRtR	# )
LegacyTmpdirPlugini(  session)scopec                    V ^8  d   QhRRRR/# )r"   rA   r   r%   r   r'   )r(   s   "r)   r*   LegacyTmpdirPlugin.__annotate__+  s     - - -> -r,   c                .    V P                   P                  # )zFReturn a :class:`pytest.TempdirFactory` instance for the test session.)r   _tmpdirhandler)rA   s   &r)   tmpdir_factory!LegacyTmpdirPlugin.tmpdir_factory)  s    
 ~~,,,r,   c                    V ^8  d   QhRRRR/# )r"   tmp_pathr   r%   r	   r'   )r(   s   "r)   r*   r7  2  s     % % %+ %r,   c                    \        V 4      # )a  Return a temporary directory (as `legacy_path`_ object)
which is unique to each test function invocation.
The temporary directory is created as a subdirectory
of the base temporary directory, with configurable retention,
as discussed in :ref:`temporary directory location and retention`.

.. note::
    These days, it is preferred to use ``tmp_path``.

    :ref:`About the tmpdir and tmpdir_factory fixtures<tmpdir and tmpdir_factory>`.

.. _legacy_path: https://py.readthedocs.io/en/latest/path.html
r
   )r=  s   &r)   r8   LegacyTmpdirPlugin.tmpdir0  s      8$$r,   r'   N)	r
  r  r  r  r  r   r:  r8   r  r'   r,   r)   r3  r3  (  s=    9-  -
 %  %r,   r3  c               $    V ^8  d   QhRRRRRR/# )r"   r0   r   r   rp   r%   r	   r'   )r(   s   "r)   r*   r*   C  s!     ) ) )S )[ )r,   c                6    \        V P                  V4      4      # )zsReturn a directory path object with the given name.

Same as :func:`mkdir`, but returns a legacy py path instance.
)r   r   r   s   &&r)   Cache_makedirrB  C  s    
 tzz$'((r,   c                    V ^8  d   QhRRRR/# )r"   r0   r   r%   r	   r'   )r(   s   "r)   r*   r*   K  s     " " "; "r,   c                ,    \        V P                  4      # )zO(deprecated) The file system path of the test module which collected this test.r   r6   r7   s   &r)   FixtureRequest_fspathrF  K      tyy!!r,   c                    V ^8  d   QhRRRR/# )r"   r0   r   r%   r	   r'   )r(   s   "r)   r*   r*   P  s     ' '$4 ' 'r,   c                ,    \        V P                  4      # )zThe directory from which pytest was invoked.

Prefer to use ``startpath`` which is a :class:`pathlib.Path`.

:type: LEGACY_PATH
r   	startpathr7   s   &r)   TerminalReporter_startdirrL  P       t~~&&r,   c                    V ^8  d   QhRRRR/# r"   r0   r   r%   r	   r'   )r(   s   "r)   r*   r*   Z  s     8 8 8; 8r,   c                R    \        \        V P                  P                  4      4      # )zThe directory from which pytest was invoked.

Prefer to use :attr:`invocation_params.dir <InvocationParams.dir>`,
which is a :class:`pathlib.Path`.

:type: LEGACY_PATH
)r   rp   invocation_paramsdirr7   s   &r)   Config_invocation_dirrS  Z  s      s41155677r,   c                    V ^8  d   QhRRRR/# rO  r'   )r(   s   "r)   r*   r*   e  s     + + +K +r,   c                >    \        \        V P                  4      4      # )zThe path to the :ref:`rootdir <rootdir>`.

Prefer to use :attr:`rootpath`, which is a :class:`pathlib.Path`.

:type: LEGACY_PATH
)r   rp   rootpathr7   s   &r)   Config_rootdirrW  e  s     s4==)**r,   c                    V ^8  d   QhRRRR/# )r"   r0   r   r%   zLEGACY_PATH | Noner'   )r(   s   "r)   r*   r*   o  s     D D D$6 Dr,   c                f    V P                   '       d   \        \        V P                   4      4      # R# )zThe path to the :ref:`configfile <configfiles>`.

Prefer to use :attr:`inipath`, which is a :class:`pathlib.Path`.

:type: Optional[LEGACY_PATH]
N)inipathr   rp   r7   s   &r)   Config_inifiler[  o  s%     .2\\\;s4<<()CtCr,   c                    V ^8  d   QhRRRR/# )r"   r0   r   r%   r	   r'   )r(   s   "r)   r*   r*   y  s     ' '7 '{ 'r,   c                ,    \        V P                  4      # )z{The path from which pytest was invoked.

Prefer to use ``startpath`` which is a :class:`pathlib.Path`.

:type: LEGACY_PATH
rJ  r7   s   &r)   Session_startdirr^  y  rM  r,   c               $    V ^8  d   QhRRRRRR/# )r"   r   rp   typevaluezstr | list[str]r'   )r(   s   "r)   r*   r*     s&     G GC Gs G? Gr,   c           	     4   VR 8X  d   V P                   f   Q hV P                   P                  p\        V\        4      '       d   \        P
                  ! V4      MTpV Uu. uF  p\        \        WF,          4      4      NK  	  up# \        RV 2V4      hu upi )pathlistzunknown configuration type: )rZ  parent
isinstancerp   shlexsplitr   
ValueError)r0   r   r`  ra  dpinput_valuesxs   &&&&   r)   Config__getini_unknown_typerl    s    z||'''\\  -7s-C-Cu{{5)2>?,QCK(,??7v>FF @s    #Bc                    V ^8  d   QhRRRR/# )r"   r0   r   r%   r	   r'   )r(   s   "r)   r*   r*     s     " "d "{ "r,   c                ,    \        V P                  4      # )z4(deprecated) returns a legacy_path copy of self.pathrE  r7   s   &r)   Node_fspathro    rG  r,   c               $    V ^8  d   QhRRRRRR/# )r"   r0   r   ra  r	   r%   r&   r'   )r(   s   "r)   r*   r*     s!      $ { t r,   c                &    \        V4      V n        R # r.   )r   r6   )r0   ra  s   &&r)   Node_fspath_setrr    s    UDIr,   T)tryfirstc                    V ^8  d   QhRRRR/# )r"   early_configr   r%   r&   r'   )r(   s   "r)   r*   r*     s     V V V4 Vr,   c                   \        4       pV P                  VP                  4       VP                  \        R\
        RR7       VP                  \        R\        \        4      RR7       VP                  \        R\        \        4      RR7       VP                  \        R\        \        4      RR7       VP                  \        R\        \        4      RR7       VP                  \        R\        \        4      RR7       VP                  \        R\        \         4      RR7       VP                  \        R	\"        4       VP                  \$        R\        \&        \(        4      RR7       R
# )zLMonkeypatch legacy path attributes in several classes, as early as possible.makedirFraisingfspathstartdirinvocation_dirrootdirinifile_getini_unknown_typeN)r   add_cleanupundosetattrr   rB  r   r  rF  r   rL  r   rS  rW  r[  r   r^  rl  r   ro  rr  )ru  mps   & r)   pytest_load_initial_conftestsr    s    
BRWW% JJuiJ> JJ~x2G)HRWJX JJ*h/H&ISX  
 JJv'2G)HRWJXJJvy(>":EJJJJvy(>":EJJ JJw
H-=$>JN JJv-/JK JJtXx_EuJUr,   c                    V ^8  d   QhRRRR/# )r"   r   r   r%   r&   r'   )r(   s   "r)   r*   r*     s     O OV O Or,   c                V   V P                   P                  R4      '       dw   \        4       pV P                  VP                  4        V P
                  p\        VRR7      pVP                  V RVRR7       V P                   P                  \        R4       R# R#   \         d     L1i ; i)	zKInstalls the LegacyTmpdirPlugin if the ``tmpdir`` plugin is also installed.r8   Tr  r9  Frx  zlegacypath-tmpdirN)rP   
has_pluginr   r  r  _tmp_path_factoryr   r  AttributeErrorregisterr3  )r   r  tmp_path_factoryr9  s   &   r)   pytest_configurer    s     &&x00]277#	P%77
 ,,<MNJJv/JO%%&8:MN# 1  		s   B B('B(c               $    V ^8  d   QhRRRRRR/# )r"   pluginobjectmanagerr   r%   r&   r'   )r(   s   "r)   r*   r*     s'     E EV E6I Ed Er,   c                    WP                  R 4      J pV'       d6   VP                  \        4      '       g   VP                  \        R4       R# R# R# )r#   zlegacypath-pytesterN)
get_pluginis_registeredr  r  )r  r  is_pytesters   && r)   pytest_plugin_registeredr    sE     ..z::K7001DEE,.CD F{r,   )?r  
__future__r   dataclassespathlibr   rf  r  typingr   r   r   	iniconfigr   _pytest.cacheproviderr   _pytest.compatr	   r   _pytest.configr   r   r   _pytest.deprecatedr   _pytest.fixturesr   r   _pytest.mainr   _pytest.monkeypatchr   _pytest.nodesr   r   r   _pytest.pytesterr   r   r   _pytest.terminalr   _pytest.tmpdirr   pexpectr   r  	dataclassr   r3  rB  rF  rL  rS  rW  r[  r^  rl  ro  rr  r  r  r  r'   r,   r)   <module>r     s:   E "         $ ' & & ! # . - $ +   + #   ) % & - *  P  P  P f
1 
1 J J  J8% %6)"
'8+D'G"
 
4V V> 
O 
O, 
E 
Er,   