
    Icg                         d Z ddlZddlZddlmZmZ ej                  j                   e	ej                  d       d      Z G d d      Zy)	z"
Check the numpy config is valid.
    N)Mockpatch_built_with_mesonzRequires Meson builds)reasonc                   B    e Zd Zg dZ ed      d        Zd Zd Zd Zy)TestNumPyConfigs)	CompilerszMachine InformationzPython Informationznumpy.__config__._check_pyyamlc                     t               |_        t        j                  t              5  t        j                          d d d        y # 1 sw Y   y xY w)N)ModuleNotFoundErrorside_effectpytestwarnsUserWarningnpshow_config)selfmock_yaml_importers     X/var/www/html/bid-api/venv/lib/python3.12/site-packages/numpy/tests/test_numpy_config.pytest_pyyaml_not_foundz&TestNumPyConfigs.test_pyyaml_not_found   s0    )<)>&\\+&NN '&&s   AAc                     t        j                  d      }t        |t              sJ t	        | j
                  D cg c]  }||v  c}      sJ d       y c c}w )NdictsmodezFRequired key missing, see index of `False` with `REQUIRED_CONFIG_KEYS`)r   r   
isinstancedictallREQUIRED_CONFIG_KEYS)r   configkeys      r   test_dict_modezTestNumPyConfigs.test_dict_mode   sY    W-&$'''T-F-FG-FcC6M-FGH 	
@	
HGs   Ac                     t        j                  t              5  t        j                  d       d d d        y # 1 sw Y   y xY w)Nfoor   )r   raisesAttributeErrorr   r   r   s    r   test_invalid_modez"TestNumPyConfigs.test_invalid_mode$   s&    ]]>*NN& +**s	   :Ac                 ^    t        t        j                  j                        dk(  sJ d       y )N   zGNew mode detected, please add UT if applicable and increment this count)lenr   
__config__DisplayModesr%   s    r   test_warn_to_add_testsz'TestNumPyConfigs.test_warn_to_add_tests(   s,    2==--.!3 	
D	
3    N)	__name__
__module____qualname__r   r   r   r    r&   r,    r-   r   r   r      s3     +, -

'
r-   r   )__doc__numpyr   r   unittest.mockr   r   markskipifhasattrr*   
pytestmarkr   r1   r-   r   <module>r9      sM      %[[233"   

 
r-   