§
    �Åj   ã                   óf   — d Z ddlZddlZddlmZ ddlmZ dZd„ Zd„ Z	e
dk    r e	¦   «          dS dS )	z0
Runs tests that are appropriate for framework.
é    N)ÚPath)ÚPopenzAlex Rogozhnikovc                 ó8  — t          | t          ¦  «        r|                      d¦  «        n| } t          d| ¦  «         t	          | t          t          t          ¦  «        j        ¦  «        i t          j	        ¥|¥¬¦  «        }| 
                    ¦   «          |j        S )Nú zrunning:)ÚcwdÚenv)Ú
isinstanceÚstrÚsplitÚprintr   r   Ú__file__ÚparentÚosÚenvironÚcommunicateÚ
returncode)Úcmdr   Úps      úGC:\Projects\Historical\venv\Lib\site-packages\einops/tests/run_tests.pyÚrunr      s{   € å& s­CÑ0Ô0Ð
9ˆ#�)Š)�C‰.Œ.ˆ.°c€CÝ	ˆ*�cÑÔÐÝˆc•s�4¥™>œ>Ô0Ñ1Ô1Ð7L½"¼*Ð7LÈÐ7LÐMÑMÔM€AØ‡M‚M�O„O€OØŒ<Ðó    c            	      ó†  ‡‡— t           j        ^} }d„ |D ¦   «         }d|v }dgdgddgdgdgd	gd
gdgdœŠt           j        dk    rdg‰d<   t           j                             d¦  «        rdg‰d<   dt	          ‰¦  «        › d�}t          |¦  «        dk    rt          |¦  «         d S ddddœŠˆfd„|D ¦   «         }ˆfd„|D ¦   «         }|r!t          |¦  «         t          d|› �¦  «        ‚|r§t          d¦  «         dg}dt          d 	                    d 
                    |¦  «        ¦  «        ¦  «        k    sJ ‚|D ]W}t          d|› �¦  «         ‰|         }dt          d 	                    d 
                    |¦  «        ¦  «        ¦  «        k    sJ ‚ŒXddlm}	  |	|¬ ¦  «        \  }
}t          	 d"i |
|i¤Ž}|dk    sJ ‚d S )#Nc                 ó   — g | ]
}|d k    ¯|‘ŒS )ú--pip-install© )Ú.0Úxs     r   ú
<listcomp>zmain.<locals>.<listcomp>   s"   € Ð:Ð:Ð:˜ Q¨/Ò%9Ð%9�!Ð%9Ð%9Ð%9r   r   Únumpyz6torch --index-url https://download.pytorch.org/whl/cpuzjax[cpu]ÚflaxÚ
tensorflowÚcupyÚpaddlepaddlezoneflow==0.9.0Úpytensor)r   ÚtorchÚjaxr!   r"   ÚpaddleÚoneflowr$   ÚdarwinÚmlxÚlinuxzmlx[cpu]z±
    Usage:   python -m einops.tests.run_tests <frameworks> [--pip-install]
    Example: python -m einops.tests.run_tests numpy pytorch --pip-install

    Available frameworks: zx
    When --pip-install is set, auto-installs requirements with pip.
     (make sure which pip points to right pip)
    r   r%   r'   )ÚtfÚpytorchr#   c                 ó<   •— g | ]}‰                      ||¦  «        ‘ŒS r   )Úget)r   ÚfÚsynonymss     €r   r   zmain.<locals>.<listcomp><   s'   ø€ Ð=Ð=Ð=¨Q�h—l’l 1 aÑ(Ô(Ð=Ð=Ð=r   c                 ó   •— g | ]}|‰v¯|‘Œ	S r   r   )r   r0   Úframework_name2installations     €r   r   zmain.<locals>.<listcomp>=   s$   ø€ ÐZÐZÐZ !°QÐ>YÐ5YÐ5Y˜AÐ5YÐ5YÐ5Yr   zUnrecognized frameworks: zInstall testing infraÚpytestz$pip install {} --progress-bar off -qr   zInstalling )Úunparse_backends)Úbackend_namesúpython -m pytest .)r7   )ÚsysÚargvÚplatformÚ
startswithÚlistÚlenr   ÚRuntimeErrorr   ÚformatÚjoinÚeinops.testsr5   )Ú_executableÚargsÚ
frameworksÚpip_install_is_setÚusageÚwrong_frameworksÚother_dependenciesÚ	frameworkÚpip_instructionsr5   Úenvvar_nameÚenvvar_valueÚreturn_coder3   r1   s                @@r   ÚmainrN      s”  øø€ ÝœÐ€K�$Ø:Ð:˜TÐ:Ñ:Ô:€JØ(¨DÐ0Ðà�ØJÐKØ˜FÐ#Ø#�nØ�ð "Ð"Ø$Ð%Ø�Lð#ð #Ðõ „|�xÒÐØ.3¨WÐ# EÑ*Ý
„|×Ò˜wÑ'Ô'ð :Ø.8¨\Ð# EÑ*ðõ  Ð ;Ñ<Ô<ð	ð ð €Eõ ˆ:�„˜!ÒÐÝˆe‰ŒˆØˆð ØØ$ð
ð 
ˆð
 >Ð=Ð=Ð=°*Ð=Ñ=Ô=ˆ
ØZÐZÐZÐZ zÐZÑZÔZÐØð 	OÝ�%‰LŒLˆLÝÐMÐ;KÐMÐMÑNÔNÐNàð gÝÐ%Ñ&Ô&Ð&Ø&˜ZÐØ•CÐ>×EÒEÀcÇhÂhÐOaÑFbÔFbÑcÔcÑdÔdÒdÐdÐdÐdà#ð 	gð 	gˆIÝÐ+ 	Ð+Ð+Ñ,Ô,Ð,Ø:¸9ÔEÐØ�ÐB×IÒIÈ#Ï(Ê(ÐScÑJdÔJdÑeÔeÑfÔfÒfÐfÐfÐfÐfð .Ð-Ð-Ð-Ð-Ð-à 0Ð 0¸zÐ JÑ JÔ JÑ€K�ÝØðð à˜Ð
%ðð €Kð ˜!ÒÐÐÐÐÐr   Ú__main__)Ú__doc__r   r8   Úpathlibr   Ú
subprocessr   Ú
__author__r   rN   Ú__name__r   r   r   ú<module>rU      s�   ððð ð 
€	€	€	Ø 
€
€
€
Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð à€
ðð ð ð?ð ?ð ?ðD ˆzÒÐØ€D�F„F€F€F€Fð Ðr   