K i8dZddlZddlZdgZdZGddZy)a Pytest test running. This module implements the ``test()`` function for NumPy modules. The usual boiler plate for doing that is to put the following in the module ``__init__.py`` file:: from numpy._pytesttester import PytestTester test = PytestTester(__name__) del PytestTester Warnings filtering and other runtime settings should be dealt with in the ``pytest.ini`` file in the numpy repo root. The behavior of the test depends on whether or not that file is found as follows: * ``pytest.ini`` is present (develop mode) All warnings except those explicitly filtered out are raised as error. * ``pytest.ini`` is absent (release mode) DeprecationWarnings and PendingDeprecationWarnings are ignored, other warnings are passed through. In practice, tests run from the numpy repo are run in development mode with ``spin``, through the standard ``spin test`` invocation or from an inplace build with ``pytest numpy``. This module is imported by every numpy subpackage, so lies at the top level to simplify circular import issues. For the same reason, it contains no numpy imports at module scope, instead importing numpy within function calls. N PytestTestercddl}td|j|jjj }td|xsdy)NrzNumPy version zNumPy CPU features: znothing enabled)numpyprint __version__lib _utils_impl _opt_info)npinfos Y/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/numpy/_pytesttester.py_show_numpy_infor%sB N2>>* +, 66   ' ' )D 4#<+<>c"eZdZdZdZ ddZy)ra Pytest test runner. A test function is typically added to a package's __init__.py like so:: from numpy._pytesttester import PytestTester test = PytestTester(__name__).test del PytestTester Calling this test function finds and runs all tests associated with the module and all its sub-modules. Attributes ---------- module_name : str Full path to the package to test. Parameters ---------- module_name : module name The name of the module to test. Notes ----- Unlike the previous ``nose``-based implementation, this class is not publicly exposed as it performs some ``numpy``-specific warning suppression. c ||_||_y)N) module_name __module__)selfrs r __init__zPytestTester.__init__Ks&%rNcddl}ddl} tj|j} t j j| jd} dg} | dgz } tjdkr0|j5|jdddl m } ddd| gdz } | d d gz } |r| d gz } |r| t|z } |d kDr| d d|d z zzgz } |r | d| zgz } |dk(rddlm}|r| ddgz } n| ddgz } n |dk7r| d|gz } |dk\r | d|gz } | |jg}| dgt|zz } t# | j%| }|dk(S#1swYxYw#t&$r}|j(}Yd}~|dk(Sd}~wwxYw)a Run tests for module using pytest. Parameters ---------- label : {'fast', 'full'}, optional Identifies the tests to run. When set to 'fast', tests decorated with `pytest.mark.slow` are skipped, when 'full', the slow marker is ignored. verbose : int, optional Verbosity value for test outputs, in the range 1-3. Default is 1. extra_argv : list, optional List with any extra arguments to pass to pytests. doctests : bool, optional .. note:: Not supported coverage : bool, optional If True, report coverage of NumPy code. Default is False. Requires installation of (pip) pytest-cov. durations : int, optional If < 0, do nothing, If 0, report time of all tests, if > 0, report the time of the slowest `timer` tests. Default is -1. tests : test or list of tests Tests to be executed with pytest '--pyargs' Returns ------- result : bool Return True on success, false otherwise. Notes ----- Each NumPy module exposes `test` in its namespace to run all tests for it. For example, to run all tests for numpy.lib: >>> np.lib.test() #doctest: +SKIP Examples -------- >>> result = np.lib.test() #doctest: +SKIP ... 1023 passed, 2 skipped, 6 deselected, 1 xfailed in 10.39 seconds >>> result True rNz-lz-q) always)cpuinfo)z!-W ignore:Not importing directoryz"-W ignore:numpy.dtype size changedz"-W ignore:numpy.ufunc size changedz-W ignore::UserWarning:cpuinfoz$-W ignore:the matrix subclass is notz(-W ignore:Importing from numpy.matlib isz--doctest-modules-vz--cov=fast)IS_PYPYz-mznot slow and not slow_pypyznot slowfullz --durations=z--pyargs)warningspytestsysmodulesrospathabspath__path__ version_infocatch_warnings simplefilternumpy.distutilsrlist numpy.testingrrmain SystemExitcode)rlabelverbose extra_argvdoctestscoverage durationstestsr!r"module module_path pytest_argsrrr1excs r __call__zPytestTester.__call__Os^ T--.ggoofooa&89 f  v   g %((* 4%%h/4  4     2 6   /0 0K  4 + +K Q; C#1"556 6K  H{23 3K F? -&BCC j11 f_ D%= (K > l9+67 7K =%%&E |d5k11   ;;{+Dqy{ 4 4t 88Dqy s$>EE(E%( F 1 FF )rrNFFN)__name__r __qualname____doc__rr=rr rr-s:&<@EIzr)rAr%r#__all__rrrBrr rDs+<  ?\\r