'L i UddlmZddlmZddlZddlmZddlmZddl Z ddl Z ddl m Z ddl m Z dd lmZd d d d d dZded<ddZGddZy)) annotations)MappingN)Path)Any) LEGACY_PATH) legacy_path)HOOK_LEGACY_PATH_ARG)collection_pathpath) file_pathr ) module_pathr ) start_pathstartdir)pytest_ignore_collectpytest_collect_filepytest_pycollect_makemodulepytest_report_headerpytest_report_collectionfinishzMapping[str, tuple[str, str]]imply_paths_hookscDt||k7rtd|d|dy)NzPath(z) != z8 if both path and fspath are given they need to be equal)r ValueError)r fspaths [/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/_pytest/config/compat.py _check_pathrs9 F|tF:U4(+F F  c(eZdZdZddZddZddZy) PathAwareHookProxyz this helper wraps around hook callers until pluggy supports fixingcalls, this one will do it currently doesn't return full hook caller proxies for fixed hooks, this may have to be changed later depending on bugs c||_yN) _hook_relay)self hook_relays r__init__zPathAwareHookProxy.__init__+s %rc,t|jSr )dirr!)r"s r__dir__zPathAwareHookProxy.__dir__.s4##$$rc2t|j||tvr|j|<St|\t j dfd }j |_j|_||_||j|<|S)Nc$|jd}|jd}|,tjtjd|| t ||nt |}n|Jt|}||<||<di|S)N)pylib_path_argpathlib_path_argr) stacklevel)popwarningswarnr formatrr r)kw path_value fspath_value fspath_varhookpath_vars r fixed_hookz2PathAwareHookProxy.__getattr__..fixed_hook9s*,&&4*@ 3566*d3K +MM,33+5$%  )#/#J ='2:'> '333!%l!3J)8 !-:zbz!r)r2rreturnr) getattrr!r__dict__ functoolswrapsnamespec__name__)r"keyr8r5r6r7s @@@r __getattr__zPathAwareHookProxy.__getattr__1s")$*:*:C"@ ' '!%DMM# K#4S#9 Hj __T " "# ".#iiJO"iiJO"%J !+DMM#  rN)r#zpluggy.HookRelayr9None)r9z list[str])rAstrr9zpluggy.HookCaller)r@ __module__ __qualname____doc__r$r'rBr-rrrr"s&%$rr)r rrrr9rC) __future__rcollections.abcrr<pathlibrtypingrr/pluggycompatrr deprecatedr r__annotations__rrr-rrrPsS"# - 90#:6&@ 40 33r