U
    ZÊ¹j¸  ã                   @   sX   d dl mZmZ d dlmZ d dlmZ d dlmZ dd„ Z	dd„ Z
d	d
„ Zdd„ ZdS )é    )ÚCodePrinterÚPrintMethodNotImplementedError)Úsymbols)ÚDummy)Úraisesc                  K   s   t | d�}tƒ |_tƒ |_|S )N)Úsettings)r   ÚsetZ_not_supportedZ_number_symbols)ÚkwargsÚp© r   úd/var/www/html/bwave/python/venv/lib/python3.8/site-packages/sympy/printing/tests/test_codeprinter.pyÚsetup_test_printer   s    
r   c                  C   s*   t dƒ} tƒ }| | ¡d| j ks&t‚d S )NÚdzd_%i)r   r   Z_print_DummyZdummy_indexÚAssertionError)r   r
   r   r   r   Útest_print_Dummy   s    r   c               	   C   sº   t dƒ\} }tƒ }| | ¡dks$t‚| |¡dks6t‚|j dg¡ | |¡dksVt‚tdd�}|j dg¡ ttƒ� | |¡ W 5 Q R X tdd�}|j dg¡ | |¡d	ks¶t‚d S )
Nzx, ifÚxÚifZif_T)Zerror_on_reservedZ_He_Man)Zreserved_word_suffixZ	if_He_Man)r   r   Z_printr   Zreserved_wordsÚupdater   Ú
ValueError)r   Úyr
   r   r   r   Útest_print_Symbol   s    


r   c               	   C   sv   G dd„ dt ƒ} ddlm}m} | ƒ }ttƒ� | |ddi ƒ¡ W 5 Q R X ttƒ� | |ddi ƒ¡ W 5 Q R X d S )Nc                   @   s   e Zd Zdd„ ZdS )z-test_issue_15791.<locals>.CrashingCodePrinterc                 S   s   t ‚d S )N)ÚNotImplementedError)ÚselfÚobjr   r   r   ÚemptyPrinter)   s    z:test_issue_15791.<locals>.CrashingCodePrinter.emptyPrinterN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   ÚCrashingCodePrinter(   s   r   r   )ÚMutableSparseMatrixÚImmutableSparseMatrixé   )r   Zsympy.matricesr   r    r   r   Zdoprint)r   r   r    Úcr   r   r   Útest_issue_15791'   s    

r#   N)Zsympy.printing.codeprinterr   r   Z
sympy.corer   Zsympy.core.symbolr   Zsympy.testing.pytestr   r   r   r   r#   r   r   r   r   Ú<module>   s   