Ë
    6Š·jŽ  ã                   ó
  — 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	 ej                  j                   G d„ de	j                  «      «       Zej                  j                   G d„ de	j                  «      «       Zej                  j                   G d„ d	e	j                  «      «       Zej                  j                   G d
„ de	j                  «      «       Zej                  j                   G d„ de	j                  «      «       Zd„ Zej                  j                   G d„ de	j                  «      «       Zej                  j                   G d„ de	j                  «      «       Zej                  j                   G d„ de	j                  «      «       Zej                  j                   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ej                  j                   G d„ de	j                  «      «       Zy) é    Né   )Úutilc                   ó>   — e Zd Z ej                  dddd«      gZ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     úV/root/workspace/.venv/lib/python3.12/site-packages/numpy/f2py/tests/test_regression.pyÚ
test_inoutzTestIntentInOut.test_inout   sq   € ä�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   © r   r   r   r      s"   „ ð ˆt�|‰|˜G U¨L¸+ÓFÐG€Gó)r   r   c                   ó>   — e Zd Z ej                  dddd«      gZ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#   r0   r$   r   r   r&   r&      s"   „ ð ˆt�|‰|˜G U¨L¸-ÓHÐI€Gó8r   r&   c                   ó>   — e Zd Z ej                  dddd«      gZ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   r2   r2   (   s#   „ ð ˆt�|‰|˜G U¨LÐ:QÓRÐS€Gó6r   r2   c                   ó>   — e Zd Z ej                  dddd«      gZ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ÚxhighrD   ÚrvalÚexpvals          r   Útest_negboundz TestNegativeBounds.test_negbound7   ss   € Ü�y‰y˜‹}ˆØˆØˆò
	à�{‰{�‰ 4¨UØ Ð!5¡&¨¨uÓ"5Ð6ð ó 8ˆä—‘˜2¤R§Z¡ZÔ0ˆÜ�{‰{˜4 Ô(Ð(Ñ(r   N)r   r    r!   r   r"   r#   rN   r$   r   r   r<   r<   2   s$   „ ð ˆt�|‰|˜G UÐ,=Ð?PÓQÐR€Gó)r   r<   c                   ó>   — e Zd Z ej                  dddd«      gZ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   Ú
isinstancerR   Ústrr   Ú__version__r9   s    r   Útest_numpy_version_attributez6TestNumpyVersionAttribute.test_numpy_version_attributeM   sS   € ô �t—{‘{Ð$<Ô=Ð=Ð=ô ˜$Ÿ+™+×<Ñ<¼cÔBÐBÐBô �~‰~ §¡×!CÑ!CÒCÐCÑCr   N)r   r    r!   r   r"   r#   rW   r$   r   r   rP   rP   G   s#   „ ð ˆt�|‰|˜G U¨L¸+ÓFÐG€Gó	Dr   rP   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_pathr`   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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      @)r   Úadd)r   ÚexpÚress      r   Útest_gh25344zTestIncludeFiles.test_gh25344f   s'   € ØˆØ�k‰k�o‰o˜c 3Ó'ˆØ�cŠzÐ‰zr   N)r   r    r!   r   r"   r#   Úoptionsrh   r$   r   r   rb   rb   `   s\   „ àˆt�|‰|˜G U¨L¸-ÓHÐI€GØ�L�D—L‘L ¨%°Ó>Ð?Ð@Ø! , $§,¡,¨w¸¸|Ó"LÐ!MÐNðP€Gór   rb   c                   óD   — e Zd Z ej                  dddd«      gZd„ Z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Úx2rg   s       r   Útest_gh26148zTestF77Comments.test_gh26148p   ó`   € Ü�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   rH   r   r   )r   r   r   r   Útestsub2ÚnptÚassert_allclose)r   Úexpectedrg   s      r   Útest_gh26466zTestF77Comments.test_gh26466w   s?   € ä—9‘9˜Q ¬"¯*©*Ô5¸Ñ9ˆØ�k‰k×"Ñ"Ó$ˆÜ×Ñ˜H cÕ*r   N)r   r    r!   r   r"   r#   rw   r~   r$   r   r   rk   rk   k   s'   „ ð ˆt�|‰|˜G U¨L¸/ÓJÐK€Gòó+r   rk   c                   ó>   — e Zd Z ej                  dddd«      gZd„ Zy)ÚTestF90Continuationr   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 rm   rp   rt   s       r   Útest_gh26148bz!TestF90Continuation.test_gh26148b‚   rx   r   N)r   r    r!   r   r"   r#   rƒ   r$   r   r   r€   r€   }   s#   „ ð ˆt�|‰|˜G U¨LÐ:OÓPÐQ€Gór   r€   c                   ó>   — e Zd Z ej                  dddd«      gZd„ Zy)ÚTestLowerF2PYDirectivesr   r   r	   zlower_f2py_fortran.f90c                 ó:   — | j                   j                  d«       y )Nr   )r   Úinquire_nextr9   s    r   Útest_gh28014z$TestLowerF2PYDirectives.test_gh28014Ž   s   € Ø�‰× Ñ  Ô#Ør   N)r   r    r!   r   r"   r#   rˆ   r$   r   r   r…   r…   ‰   s#   „ ð ˆ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"   ÚRuntimeErrorrU   ©Ú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Š   )ri   r‹   Úunknown_subroutine_)r   rŒ   r"   ÚImportErrorrU   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                   ój   — e Zd Z ej                  dddd«       ej                  dddd«      gZdZd„ Zy)	ÚTestComplexStructCompatr   r   r	   zcomplex_struct_compat.pyfzcomplex_struct_compat.f90Ú_complex_struct_compat_testc                 ó  — t        j                  g d¢t         j                  ¬«      }| j                  j	                  |«       t        j                  |j                  g d¢«       t        j                  |j                  g d¢«       y )N)y      ð?       @y      @      @y      @      @r   )ç        rœ   rœ   )g      ð?rd   g      @)	r   rq   Ú
complex128r   Ú	zero_imagr{   Úassert_array_equalÚimagÚreal)r   Úcs     r   Ú test_complex_struct_field_accessz8TestComplexStructCompat.test_complex_struct_field_access»   sQ   € Ü�H‰HÒ-´R·]±]ÔCˆØ�‰×Ñ˜aÔ Ü×Ñ˜qŸv™v¢Ô7Ü×Ñ˜qŸv™v¢Õ7r   N)r   r    r!   r   r"   r#   r‹   r£   r$   r   r   r™   r™   ±   sA   „ ð
 	ˆ�‰�W˜e \Ð3NÓOØˆ�‰�W˜e \Ð3NÓOð€Gð 0€Kó8r   r™   c                   ó>   — e Zd Z ej                  dddd«      gZ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_maxr9   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¥   Â   s#   „ ð ˆt�|‰|˜G U¨LÐ:PÓQÐR€Gó3r   r¥   )r[   Úplatformr   Únumpyr   Únumpy.testingÚtestingr{   Ú r   ÚmarkÚslowÚF2PyTestr   r&   r2   r<   rP   r`   rb   rk   r€   r…   r‘   ÚskipifÚsystemr—   r™   r¥   r$   r   r   ú<module>r¹      sJ  ðÛ 	Û ã ã Ý å ð ‡�×Ñô)�d—m‘mó )ó ð)ð ‡�×Ñô8˜dŸm™mó 8ó ð8ð ‡�×Ñô6 §¡ó 6ó ð6ð ‡�×Ñô)˜Ÿ™ó )ó ð)ð( ‡�×ÑôD §¡ó Dó ðDò"&ð ‡�×Ñô�t—}‘}ó ó ðð ‡�×Ñô+�d—m‘mó +ó ð+ð" ‡�×Ñô	˜$Ÿ-™-ó 	ó ð	ð ‡�×Ñô˜dŸm™mó ó ðð ‡�×Ññ	4ó ð	4ð ‡�×ÑØ‡�×Ñ�O�H—O‘OÓ%¨Ñ2Ð;aÐÓbñ2ó có ð2ð  ‡�×Ñô8˜dŸm™mó 8ó ð8ð  ‡�×Ñô3 §¡ó 3ó ñ3r   