Ë
    ímxi&  ã                   óì  — d dl Z d dlZd dlZd dlZd dlmZ ddlm	Z	  G d„ de	j                  «      Z G d„ de	j                  «      Z G d„ d	e	j                  «      Z G d
„ de	j                  «      Z G d„ de	j                  «      Zd„ Z G d„ de	j                  «      Z G d„ de	j                  «      Z G d„ de	j                  «      Z G d„ de	j                  «      Zej*                  j,                  d„ «       Zej*                  j,                  ej*                  j1                   ej2                  «       dk(  d¬«      d„ «       «       Zej*                  j,                   G d„ de	j                  «      «       Zy)é    Né   )Úutilc                   óp   — e Zd Z ej                  dddd«      gZej                  j                  d„ «       Z	y)ÚTestIntentInOutÚtestsÚsrcÚ
regressionú	inout.f90c                 ól  — t        j                  dt         j                  ¬«      d d d…   }t        j                  t
        | j                  j                  |«       t        j                  dt         j                  ¬«      }| j                  j                  |«       t        j                  |g d¢«      sJ ‚y )Né   ©Údtypeé   é   )r   r   r   )	ÚnpÚarangeÚfloat32ÚpytestÚraisesÚ
ValueErrorÚmoduleÚfooÚallclose)ÚselfÚxs     úW/home/htdocs/ttos/venv/lib/python3.12/site-packages/numpy/f2py/tests/test_regression.pyÚ
test_inoutzTestIntentInOut.test_inout   ss   € ô �I‰I�aœrŸz™zÔ*©3¨Q¨3Ñ/ˆÜ�‰”j $§+¡+§/¡/°1Ô5ô �I‰I�aœrŸz™zÔ*ˆØ�‰�‰˜ÔÜ�{‰{˜1šiÔ(Ð(Ñ(ó    N)
Ú__name__Ú
__module__Ú__qualname__r   ÚgetpathÚsourcesr   ÚmarkÚslowr   © r   r   r   r      s7   „ àˆt�|‰|˜G U¨L¸+ÓFÐG€Gà‡[�[×Ññ)ó ñ)r   r   c                   óp   — e Zd Z ej                  dddd«      gZej                  j                  d„ «       Z	y)ÚTestDataOnlyMultiModuler   r   r	   zdatonly.f90c                 óÜ   — | j                   j                  j                  dk(  sJ ‚| j                   j                  j                  dk(  sJ ‚d}| j                   j                  d«      dk(  sJ ‚y )Néd   iñ  é   iö  )r   ÚdatonlyÚ	max_valueÚdatÚmax_Úsimple_subroutine)r   Úint_ins     r   Ú	test_mdatz!TestDataOnlyMultiModule.test_mdat    s^   € à�{‰{×"Ñ"×,Ñ,°Ò3Ð3Ð3Ø�{‰{�‰×#Ñ# tÒ+Ð+Ð+ØˆØ�{‰{×,Ñ,¨QÓ/°4Ò7Ð7Ñ7r   N)
r   r    r!   r   r"   r#   r   r$   r%   r2   r&   r   r   r(   r(      s7   „ àˆt�|‰|˜G U¨L¸-ÓHÐI€Gà‡[�[×Ññ8ó ñ8r   r(   c                   óp   — e Zd Z ej                  dddd«      gZej                  j                  d„ «       Z	y)ÚTestModuleWithDerivedTyper   r   r	   zmod_derived_types.f90c                 ó„   — | j                   j                  d«      dk(  sJ ‚| j                   j                  d«      dk(  sJ ‚y )Né
   én   éÒ   )r   Úno_type_subroutineÚtype_subroutine©r   s    r   Útest_mtypesz%TestModuleWithDerivedType.test_mtypes,   s<   € à�{‰{×-Ñ-¨bÓ1°SÒ8Ð8Ð8Ø�{‰{×*Ñ*¨2Ó.°#Ò5Ð5Ñ5r   N)
r   r    r!   r   r"   r#   r   r$   r%   r<   r&   r   r   r4   r4   (   s8   „ àˆt�|‰|˜G U¨LÐ:QÓRÐS€Gà‡[�[×Ññ6ó ñ6r   r4   c                   óp   — e Zd Z ej                  dddd«      gZej                  j                  d„ «       Z	y)ÚTestNegativeBoundsr   r   Únegative_boundszissue_20853.f90c           
      ó  — t        j                  d«      }d}d}d„ }| j                  j                  |||d  |||«       ¬«      }t        j                  dt         j                  ¬«      }t        j
                  ||«      sJ ‚y )Né   iúÿÿÿé   c                 ó   — || z
  dz   S )Nr   r&   )ÚxlÚxhs     r   Úuboundz0TestNegativeBounds.test_negbound.<locals>.ubound?   s   € Ø˜‘7˜Q‘;Ðr   )Úis_Úie_Úarré   r   )r   r   r   r   r   r   )r   ÚxvecÚxlowÚxhighrF   ÚrvalÚexpvals          r   Útest_negboundz TestNegativeBounds.test_negbound6   ss   € ä�y‰y˜‹}ˆØˆØˆò
	à�{‰{�‰ 4¨UØ Ð!5¡&¨¨uÓ"5Ð6ð ó 8ˆä—‘˜2¤R§Z¡ZÔ0ˆÜ�{‰{˜4 Ô(Ð(Ñ(r   N)
r   r    r!   r   r"   r#   r   r$   r%   rP   r&   r   r   r>   r>   2   s9   „ àˆt�|‰|˜G UÐ,=Ð?PÓQÐR€Gà‡[�[×Ññ)ó ñ)r   r>   c                   óp   — e Zd Z ej                  dddd«      gZej                  j                  d„ «       Z	y)ÚTestNumpyVersionAttributer   r   r	   r
   c                 óÒ   — t        | j                  d«      sJ ‚t        | j                  j                  t        «      sJ ‚t
        j                  | j                  j                  k(  sJ ‚y )NÚ__f2py_numpy_version__)Úhasattrr   Ú
isinstancerT   Ústrr   Ú__version__r;   s    r   Útest_numpy_version_attributez6TestNumpyVersionAttribute.test_numpy_version_attributeL   sS   € ô �t—{‘{Ð$<Ô=Ð=Ð=ô ˜$Ÿ+™+×<Ñ<¼cÔBÐBÐBô �~‰~ §¡×!CÑ!CÒCÐCÑCr   N)
r   r    r!   r   r"   r#   r   r$   r%   rY   r&   r   r   rR   rR   G   s;   „ ð ˆt�|‰|˜G U¨L¸+ÓFÐG€Gà‡[�[×Ññ	Dó ñ	Dr   rR   c                  ó„   — t         j                  j                  «       } t        j                  | «      }dD ]  }||v rŒJ ‚ y )N)zfortranobject.czfortranobject.h)r   Úf2pyÚget_includeÚosÚlistdir)ÚincdirÚfnames_in_dirÚfnames      r   Útest_include_pathrb   Y   s?   € Ü�W‰W× Ñ Ó"€FÜ—J‘J˜vÓ&€MØ7ò &ˆØ˜Ò%Ð%Ð%ñ&r   c                   óÌ   — e Zd Z ej                  dddd«      gZd ej                  ddd«      › �d ej                  ddd«      › �gZej                  j                  d„ «       Z
y)	ÚTestIncludeFilesr   r   r	   zincfile.f90z-Iz--include-paths c                 óN   — d}| j                   j                  dd«      }||k(  sJ ‚y )Ng      @g      @g      @)r   Úadd)r   ÚexpÚress      r   Útest_gh25344zTestIncludeFiles.test_gh25344e   s'   € àˆØ�k‰k�o‰o˜c 3Ó'ˆØ�cŠzÐ‰zr   N)r   r    r!   r   r"   r#   Úoptionsr   r$   r%   ri   r&   r   r   rd   rd   `   su   „ Øˆt�|‰|˜G U¨L¸-ÓHÐI€GØ�L�D—L‘L ¨%°Ó>Ð?Ð@Ø! , $§,¡,¨w¸¸|Ó"LÐ!MÐNðP€Gð ‡[�[×Ññó ñr   rd   c                   ó¨   — e Zd Z ej                  dddd«      gZej                  j                  d„ «       Z	ej                  j                  d„ «       Z
y)ÚTestF77Commentsr   r   r	   zf77comments.fc                 óø   — t        j                  dt         j                  ¬«      }t        j                  dt         j                  ¬«      }| j                  j	                  ||«      }|d   dk(  sJ ‚|d   dk(  sJ ‚y ©Nr   r   r+   r   é   r   é   ©r   ÚarrayÚint32r   Útestsub©r   Úx1Úx2rh   s       r   Útest_gh26148zTestF77Comments.test_gh26148o   ó`   € ä�X‰X�aœrŸx™xÔ(ˆÜ�X‰X�aœrŸx™xÔ(ˆØ�k‰k×!Ñ! " bÓ)ˆØ�1‰v˜Š{Ðˆ{Ø�1‰v˜Š|Ð‰|r   c                 ó¶   — t        j                  ddt         j                  ¬«      dz  }| j                  j	                  «       }t        j                  ||«       y )Nr   rJ   r   r   )r   r   r   r   Útestsub2ÚnptÚassert_allclose)r   Úexpectedrh   s      r   Útest_gh26466zTestF77Comments.test_gh26466w   sA   € ô —9‘9˜Q ¬"¯*©*Ô5¸Ñ9ˆØ�k‰k×"Ñ"Ó$ˆÜ×Ñ˜H cÕ*r   N)r   r    r!   r   r"   r#   r   r$   r%   rx   r   r&   r   r   rl   rl   k   sU   „ àˆt�|‰|˜G U¨L¸/ÓJÐK€Gà‡[�[×Ññó ðð ‡[�[×Ññ+ó ñ+r   rl   c                   óp   — e Zd Z ej                  dddd«      gZej                  j                  d„ «       Z	y)ÚTestF90Contiuationr   r   r	   úf90continuation.f90c                 óø   — t        j                  dt         j                  ¬«      }t        j                  dt         j                  ¬«      }| j                  j	                  ||«      }|d   dk(  sJ ‚|d   dk(  sJ ‚y rn   rq   ru   s       r   Útest_gh26148bz TestF90Contiuation.test_gh26148b‚   ry   r   N)
r   r    r!   r   r"   r#   r   r$   r%   r„   r&   r   r   r�   r�   ~   s8   „ àˆt�|‰|˜G U¨LÐ:OÓPÐQ€Gà‡[�[×Ññó ñr   r�   c                   óp   — e Zd Z ej                  dddd«      gZej                  j                  d„ «       Z	y)ÚTestLowerF2PYDirectivesr   r   r	   zlower_f2py_fortran.f90c                 ó:   — | j                   j                  d«       y )Nr   )r   Úinquire_nextr;   s    r   Útest_gh28014z$TestLowerF2PYDirectives.test_gh28014Ž   s   € à�‰× Ñ  Ô#Ør   N)
r   r    r!   r   r"   r#   r   r$   r%   r‰   r&   r   r   r†   r†   Š   s8   „ àˆt�|‰|˜G U¨LÐ:RÓSÐT€Gà‡[�[×Ññó ñr   r†   c                  ó°   — 	 t        j                  t        j                  dddd«      gdgd¬«      } y # t        $ r}dt	        |«      vsJ ‚Y d }~y d }~ww xY w)	Nr   r   r	   r‚   z	-lfoo.barÚBlah)Úmodule_namezlparen got assign)r   Úbuild_moduler"   ÚRuntimeErrorrW   ©ÚaaÚrerrs     r   Útest_gh26623r’   “   sY   € ð4Ü×ÑÜ�\‰\˜' 5¨,Ð8MÓNÐOØˆMØô
‰øô
 ò 4Ø"¬#¨d«)Ñ3Ð3Õ3ûð4ús   ‚03 ³	A¼AÁAÚWindowsz$Unsupported on this platform for now)Úreasonc                  ó²   — 	 t        j                  t        j                  dddd«      gddgd¬«      } y # t        $ r}d	t	        |«      v sJ ‚Y d }~y d }~ww xY w)
Nr   r   r	   zf77fixedform.f95z--f77flags='-ffixed-form -O2'z--f90flags="-ffixed-form -g"r‹   )rj   rŒ   Úunknown_subroutine_)r   r�   r"   ÚImportErrorrW   r�   s     r   Útest_gh25784r˜       sc   € ð2Ü×ÑÜ�\‰\˜' 5¨,Ð8JÓKÐLð 0Ø0ðð
 ô
‰øô ò 2Ø$¬¨D«	Ñ1Ð1Õ1ûð2ús   ‚14 ´	A½AÁAc                   óp   — e Zd Z ej                  dddd«      gZej                  j                  d„ «       Z	y)ÚTestAssignmentOnlyModulesr   r   r	   zassignOnlyModule.f90c                 óâ   — | j                   j                  j                  dk(  sJ ‚| j                   j                  j                  dk(  sJ ‚| j                   j                  j                  dk(  sJ ‚y )Né   é   éH   )r   Ú	f_globalsÚn_maxÚi_maxÚj_maxr;   s    r   Útest_gh27167z&TestAssignmentOnlyModules.test_gh27167·   s\   € à—‘×%Ñ%×+Ñ+¨rÒ1Ð2Ð1Ø—‘×%Ñ%×+Ñ+¨rÒ1Ð2Ð1Ø—‘×%Ñ%×+Ñ+¨rÒ1Ð2Ñ1r   N)
r   r    r!   r   r"   r#   r   r$   r%   r£   r&   r   r   rš   rš   ²   s:   „ ð ˆt�|‰|˜G U¨LÐ:PÓQÐR€Gà‡[�[×Ññ3ó ñ3r   rš   )r]   Úplatformr   Únumpyr   Únumpy.testingÚtestingr|   Ú r   ÚF2PyTestr   r(   r4   r>   rR   rb   rd   rl   r�   r†   r$   r%   r’   ÚskipifÚsystemr˜   rš   r&   r   r   ú<module>r¬      s?  ðÛ 	Û ã ã Ý å ô)�d—m‘mô )ô 	8˜dŸm™mô 	8ô6 §¡ô 6ô)˜Ÿ™ô )ô*D §¡ô Dò$&ô	�t—}‘}ô 	ô+�d—m‘mô +ô&
˜Ÿ™ô 
ô˜dŸm™mô ð ‡�×Ññ	4ó ð	4ð ‡�×ÑØ‡�×Ñ�O�H—O‘OÓ%¨Ñ2Ð;aÐÓbñ2ó có ð2ð  ‡�×Ñô3 §¡ó 3ó ñ3r   