Ë
    7^(h.  ã                   óŽ   — d Z ddlmZmZmZ ddlmZmZmZ ddl	m
Z
 ddlmZ  e
dd¬«      Zesd	Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)z<Tests of tools for setting up interactive IPython sessions. é    )Úinit_ipython_sessionÚenable_automatic_symbolsÚ"enable_automatic_int_sympification)ÚSymbolÚRationalÚInteger)Úimport_module)ÚraisesÚIPythonz1.0)Úmin_module_versionTc                  ó>  — t        «       } | j                  d«       t        | «       d}|| j                  vsJ ‚| j                  d|z  d«       || j                  vsJ ‚| j                  d|z  d«       | j                  d   t        k(  sJ ‚| j                  |›d|›d�d«       || j                  v sJ ‚| j                  d	d«       d
| j                  vsJ ‚| j                  d   du sJ ‚| j                  d«       | j                  dd«       | j                  d   du sJ ‚y )Nzfrom sympy import *Úverylongsymbolnameza = %sTza = type(%s)Úaz = Symbol('z')za = all == __builtin__.allÚallzimport sympyz a = factorial == sympy.factorial)r   Úrun_cellr   Úuser_nsr   )ÚappÚsymbols     úb/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sympy/interactive/tests/test_ipython.pyÚtest_automatic_symbolsr      s  € ô Ó
 €CØ‡L�LÐ&Ô'ä˜SÔ!à!€FØ˜Ÿ™Ñ$Ð$Ð$Ø‡L�L�˜FÑ" DÔ)Ø˜Ÿ™Ñ$Ð$Ð$Ø‡L�L� &Ñ(¨$Ô/Ø�;‰;�sÑœvÒ%Ð%Ð%Ø‡L�Lª²Ð7¸Ô>Ø�S—[‘[Ñ Ð Ð ð ‡L�LÐ-¨tÔ4Ø˜Ÿ™Ñ#Ð#Ð#Ø�;‰;�sÑ˜tÑ#Ð#Ð#ð ‡L�L�Ô Ø‡L�LÐ3°TÔ:Ø�;‰;�sÑ˜tÑ#Ð#Ñ#ó    c                  ó.  — t        «       } | j                  d«       | j                  d«       t        | j                  d   t        «      sJ ‚t        | «       | j                  d«       t        | j                  d   t        «      sJ ‚| j                  d«       t        | j                  d   t        «      sJ ‚| j                  d«       t        | j                  d   t        «      sJ ‚| j                  d«       | j                  d   t        dd«      k(  sJ ‚y )	Nzfrom sympy import Integerza = 1r   za = 1/2z
a = int(1)z
a = (1/
2)é   é   )r   r   Ú
isinstancer   Úintr   r   r   ©r   s    r   Útest_int_to_Integerr   :   sÜ   € ä
Ó
 €CØ‡L�LÐ,Ô-Ø‡L�L�ÔÜ�c—k‘k #Ñ&¬Ô,Ð,Ð,ä& sÔ+Ø‡L�L�ÔÜ�c—k‘k #Ñ&¬Ô1Ð1Ð1Ø‡L�L�ÔÜ�c—k‘k #Ñ&¬Ô0Ð0Ð0Ø‡L�L�ÔÜ�c—k‘k #Ñ&¬Ô,Ð,Ð,Ø‡L�L�ÔØ�;‰;�sÑœx¨¨1›~Ò-Ð-Ñ-r   c                  ó¦  — t        «       } | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       t        t        j                  j                  d«      d   «      d	k  r.| j                  d
   d   dk(  sJ ‚| j                  d   d   dk(  s6J ‚| j                  d
   d   d   dk(  sJ ‚| j                  d   d   d   dk(  sJ ‚| j                  d«       | j                  d«       | j                  d«       | j                  d«       t        t        j                  j                  d«      d   «      d	k  r-| j                  d
   d   dv sJ ‚| j                  d   d   dv sJ ‚y | j                  d
   d   d   dv sJ ‚| j                  d   d   d   dv sJ ‚y )Núip = get_ipython()úinst = ip.instance()ú&format = inst.display_formatter.formatúfrom sympy import Symbolza = format(Symbol('pi'))za2 = format(Symbol('pi')**2)ú.r   r   r   ú
text/plainÚpiÚa2zpi**2úfrom sympy import init_printingzinit_printing())u   Ï€r&   )u    2
Ï€ z  2
pi ©r   r   r   ÚipythonÚ__version__Úsplitr   r   s    r   Útest_ipythonprintingr-   N   sÎ  € ä
Ó
 €CØ‡L�LÐ%Ô&Ø‡L�LÐ'Ô(Ø‡L�LÐ9Ô:Ø‡L�LÐ+Ô,ð ‡L�LÐ+Ô,Ø‡L�LÐ/Ô0ä
Œ7×Ñ×$Ñ$ SÓ)¨!Ñ,Ó-°Ò1Ø�{‰{˜3Ñ Ñ-°Ò5Ð5Ð5Ø�{‰{˜4Ñ  Ñ.°'Ò9Ð9Ð9à�{‰{˜3Ñ Ñ" <Ñ0°DÒ8Ð8Ð8Ø�{‰{˜4Ñ  Ñ# LÑ1°WÒ<Ð<Ð<ð ‡L�LÐ2Ô3Ø‡L�LÐ"Ô#à‡L�LÐ+Ô,Ø‡L�LÐ/Ô0ä
Œ7×Ñ×$Ñ$ SÓ)¨!Ñ,Ó-°Ò1Ø�{‰{˜3Ñ Ñ-Ð1TÑTÐTÐTØ�{‰{˜4Ñ  Ñ.Ð2`Ñ`Ð`Ñ`à�{‰{˜3Ñ Ñ" <Ñ0Ð4WÑWÐWÐWØ�{‰{˜4Ñ  Ñ# LÑ1Ð5cÑcÐcÑcr   c                  óÌ  ‡— t        «       Š‰j                  d«       ‰j                  d«       ‰j                  d«       ‰j                  d«       ‰j                  d«       ‰j                  d«       t        t        j                  j                  d«      d   «      d	k  r&‰j                  d
   d   } t        t        ˆfd„«       n(‰j                  d
   d   d   } t        t        ˆfd„«       | dv sJ ‚‰j                  d«       ‰j                  d«       ‰j                  d«       t        t        j                  j                  d«      d   «      d	k  r%‰j                  d
   d   } ‰j                  d
   d   }n*‰j                  d
   d   d   } ‰j                  d
   d   d   }| dv sJ ‚|dk(  sJ ‚‰j                  d«       ‰j                  d«       t        t        j                  j                  d«      d   «      d	k  r‰j                  d
   d   }n‰j                  d
   d   d   }|dk(  sJ ‚‰j                  d«       ‰j                  d«       ‰j                  d«       t        t        j                  j                  d«      d   «      d	k  r&‰j                  d
   d   } t        t        ˆfd„«       n(‰j                  d
   d   d   } t        t        ˆfd„«       | dv sJ ‚y )Nr    r!   r"   r#   r(   z2a = format({Symbol('pi'): 3.14, Symbol('n_i'): 3})r$   r   r   r   r%   c                  ó(   •— ‰ j                   d   d   S ©Nr   ú
text/latex©r   r   s   €r   ú<lambda>z+test_print_builtin_option.<locals>.<lambda>}   ó   ø€  §¡¨SÑ!1°,Ñ!?€ r   c                  ó.   •— ‰ j                   d   d   d   S ©Nr   r   r1   r2   r   s   €r   r3   z+test_print_builtin_option.<locals>.<lambda>€   ó   ø€  §¡¨SÑ!1°!Ñ!4°\Ñ!B€ r   )ú{pi: 3.14, n_i: 3}u   {náµ¢: 3, Ï€: 3.14}ú{n_i: 3, pi: 3.14}u   {Ï€: 3.14, náµ¢: 3}ú>inst.display_formatter.formatters['text/latex'].enabled = Trueúinit_printing(use_latex=True)r1   z8$\displaystyle \left\{ n_{i} : 3, \  \pi : 3.14\right\}$z\    class WithOverload:
        def _latex(self, printer):
            return r"\LaTeX"
    za = format((WithOverload(),))z%$\displaystyle \left( \LaTeX,\right)$z2init_printing(use_latex=True, print_builtin=False)c                  ó(   •— ‰ j                   d   d   S r0   r2   r   s   €r   r3   z+test_print_builtin_option.<locals>.<lambda>¯   r4   r   c                  ó.   •— ‰ j                   d   d   d   S r6   r2   r   s   €r   r3   z+test_print_builtin_option.<locals>.<lambda>²   r7   r   )r8   r9   )	r   r   r   r*   r+   r,   r   r
   ÚKeyError)ÚtextÚlatexr   s     @r   Útest_print_builtin_optionrA   p   sÃ  ø€ ä
Ó
 €CØ‡L�LÐ%Ô&Ø‡L�LÐ'Ô(Ø‡L�LÐ9Ô:Ø‡L�LÐ+Ô,Ø‡L�LÐ2Ô3à‡L�LÐEÔFä
Œ7×Ñ×$Ñ$ SÓ)¨!Ñ,Ó-°Ò1Ø�{‰{˜3Ñ Ñ-ˆÜŒxÓ?Õ@à�{‰{˜3Ñ Ñ" <Ñ0ˆÜŒxÓBÔCð ð añ að að að ‡L�LÐQÔRØ‡L�LÐ0Ô1Ø‡L�LÐEÔFä
Œ7×Ñ×$Ñ$ SÓ)¨!Ñ,Ó-°Ò1Ø�{‰{˜3Ñ Ñ-ˆØ—‘˜CÑ  Ñ.‰à�{‰{˜3Ñ Ñ" <Ñ0ˆØ—‘˜CÑ  Ñ# LÑ1ˆØð añ að að að ÐOÒOÐOÐOð ‡L�Lð ô 	ð
 ‡L�LÐ0Ô1ä
Œ7×Ñ×$Ñ$ SÓ)¨!Ñ,Ó-°Ò1Ø—‘˜CÑ  Ñ.‰à—‘˜CÑ  Ñ# LÑ1ˆØÐ<Ò<Ð<Ð<à‡L�LÐQÔRØ‡L�LÐEÔFØ‡L�LÐEÔFä
Œ7×Ñ×$Ñ$ SÓ)¨!Ñ,Ó-°Ò1Ø�{‰{˜3Ñ Ñ-ˆÜŒxÓ?Õ@à�{‰{˜3Ñ Ñ" <Ñ0ˆÜŒxÓBÔCð
 Ð?Ñ?Ð?Ñ?r   c                  ó  — t        «       } | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d	«       | j                  d
«       t        t        j                  j                  d«      d   «      dk  r†| j                  d   d   dk(  sJ ‚d| j                  d   vsJ ‚| j                  d   d   d d dk(  sJ ‚d| j                  d   vsJ ‚| j                  d   d   dk(  sJ ‚| j                  d   d   dk(  sJ ‚y | j                  d   d   d   dk(  sJ ‚d| j                  d   d   vsJ ‚| j                  d   d   d   d d dk(  sJ ‚d| j                  d   d   vsJ ‚| j                  d   d   d   dk(  sJ ‚| j                  d   d   d   dk(  sJ ‚y )Nr    r!   r"   r:   ú'from sympy import init_printing, Matrixz0init_printing(use_latex=True, use_unicode=False)za = format((True, False))z
import syszb = format(sys.flags)zc = format((Matrix([1, 2]),))r$   r   r   r   r%   z(True, False)r1   Úbé
   z
sys.flags(Úcz [1]  
([ ],)
 [2]  zJ$\displaystyle \left( \left[\begin{matrix}1\\2\end{matrix}\right],\right)$r)   r   s    r   Útest_builtin_containersrG   º   sH  € ä
Ó
 €CØ‡L�LÐ%Ô&Ø‡L�LÐ'Ô(Ø‡L�LÐ9Ô:Ø‡L�LÐQÔRØ‡L�LÐ:Ô;Ø‡L�LÐCÔDð ‡L�LÐ,Ô-Ø‡L�L�ÔØ‡L�LÐ(Ô)Ø‡L�LÐ0Ô1ä
Œ7×Ñ×$Ñ$ SÓ)¨!Ñ,Ó-°Ò1Ø�{‰{˜3Ñ Ñ-°/ÒAÐAÐAØ 3§;¡;¨sÑ#3Ñ3Ð3Ð3Ø�{‰{˜3Ñ Ñ-¨c¨rÐ2°lÒBÐBÐBØ 3§;¡;¨sÑ#3Ñ3Ð3Ð3Ø�{‰{˜3Ñ Ñ-ðòð 	ð ð �{‰{˜3Ñ Ñ-ð  2Gò  Gð  	Gñ  Gà�{‰{˜3Ñ Ñ" <Ñ0°_ÒDÐDÐDØ 3§;¡;¨sÑ#3°AÑ#6Ñ6Ð6Ð6Ø�{‰{˜3Ñ Ñ" <Ñ0°°"Ð5¸ÒEÐEÐEØ 3§;¡;¨sÑ#3°AÑ#6Ñ6Ð6Ð6Ø�{‰{˜3Ñ Ñ" <Ñ0ðòð 	ð ð �{‰{˜3Ñ Ñ" <Ñ0ð  5Jò  Jð  	Jñ  Jr   c                  ó0  — t        «       } | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       t        t        j                  j                  d	«      d
   «      dk  r| j                  d«       n| j                  d«       | j                  d«       | j                  d«       | j                  d«       y )Núimport IPythonr    r!   r"   rC   z%init_printing(use_latex='matplotlib')z=inst.display_formatter.formatters['image/png'].enabled = Truezimport warningsr$   r   r   zwarnings.simplefilter('error')zHwarnings.simplefilter('error', IPython.core.formatters.FormatterWarning)za = format(Matrix([1, 2, 3]))z'from sympy import Piecewise, Symbol, EqzAx = Symbol('x'); pw = format(Piecewise((1, Eq(x, 0)), (0, True))))r   r   r   r*   r+   r,   r   s    r   Útest_matplotlib_bad_latexrJ   ã   sÞ   € ä
Ó
 €CØ‡L�LÐ!Ô"Ø‡L�LÐ%Ô&Ø‡L�LÐ'Ô(Ø‡L�LÐ9Ô:Ø‡L�LÐ:Ô;Ø‡L�LÐ8Ô9ð ‡L�LÐPÔQð ‡L�LÐ"Ô#ä
Œ7×Ñ×$Ñ$ SÓ)¨!Ñ,Ó-°Ò1Ø�‰Ð5Õ6à�‰Ð_Ô`ð ‡L�LÐ0Ô1ð ‡L�LÐ:Ô;Ø‡L�LÐTÕUr   c                  ó&  — t        «       } | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d«       | j                  d	«       | j                  d
«       t        t        j                  j                  d«      d   «      dk  r| j                  d   d   }n| j                  d   d   d   }|dk(  sJ ‚y )NrI   r    r!   r"   r:   r(   r#   r;   z‹    class SymbolWithOverload(Symbol):
        def _repr_latex_(self):
            return r"Hello " + super()._repr_latex_() + " world"
    z#a = format(SymbolWithOverload('s'))r$   r   r   r   r1   zHello $\displaystyle s$ worldr)   )r   r@   s     r   Útest_override_repr_latexrL      sï   € ä
Ó
 €CØ‡L�LÐ!Ô"Ø‡L�LÐ%Ô&Ø‡L�LÐ'Ô(Ø‡L�LÐ9Ô:Ø‡L�LÐQÔRØ‡L�LÐ2Ô3Ø‡L�LÐ+Ô,Ø‡L�LÐ0Ô1Ø‡L�Lð ô 	ð
 ‡L�LÐ6Ô7ä
Œ7×Ñ×$Ñ$ SÓ)¨!Ñ,Ó-°Ò1Ø—‘˜CÑ  Ñ.‰à—‘˜CÑ  Ñ# LÑ1ˆØÐ4Ò4Ð4Ñ4r   N)Ú__doc__Úsympy.interactive.sessionr   r   r   Ú
sympy.corer   r   r   Úsympy.externalr	   Úsympy.testing.pytestr
   r*   Údisabledr   r   r-   rA   rG   rJ   rL   © r   r   ú<module>rT      sc   ðÙ B÷Bñ B÷ 1Ñ 0Ý (Ý 'ñ ˜	°eÔ
<€áà€Hò$ò:.ò(dòDG@òT'JòRVó:5r   