U
    iâËdp	  ã                   @   s|   d dl mZ d dlZd dlmZmZ d dlmZm	Z	 d dl
mZ d dlZd dlZee	G dd„ deƒƒƒZedkrxe ¡  dS )	é    )ÚnjitN)ÚGdbMIDriverÚneeds_gdb_py3)ÚTestCaseÚneeds_subprocess)Úcollect_gdbinfoc                   @   s   e Zd Zdd„ ZdS )ÚTestc                    sJ  t jdt jfdt jfgdd�‰ tdd�‡ fdd„ƒ}|ƒ  tƒ j}ttd|gd	d
�}|j	dd� | 
¡  | d¡ | d¡ |jj d¡}| ¡ d }d}t ||¡ ¡ d  d¡}dd„ dd„ |D ƒD ƒ}tƒ }	d|	d< d|	d< d|	d< d|	d< d|	d< d |	d!< d"|	d#< d$|	d%< d&|	d'< |	 ¡ D ]\}
}|  ||
 |¡ �q"| ¡  d S )(NÚxÚyT)Úalign)Údebugc            	   	      sŠ   d} d}d|df}t  d¡}t  ddgdd	gg¡}d
d ¡  }d}t  d¡ d¡d d d…d d d…f }t jdˆ d�}| ||||||||f	S )NgX9´Èv¾ó?)é   é   é   Úaé   g      @r   y              @r   y              @zSome stringz           L-Padded stringy      &@      6@é   )r   é   r   )Údtype)ÚnpZarangeÚarrayÚlstripZreshapeZzeros)	r   ÚbÚcÚdÚeÚfÚgÚhÚi©Zrdt_a© úZ/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/numba/tests/gdb/test_pretty_print.pyÚfoo   s    

$zTest.test.<locals>.fooz-xF)Z	init_cmdsr   é   )Úliner   zUTF-8r   z^\^done,variables=\[\{(.*)\}\]$z},{c                 S   s   i | ]\}}||“qS r!   r!   )Ú.0ÚkÚvr!   r!   r"   Ú
<dictcomp>1   s      zTest.test.<locals>.<dictcomp>c                 S   s   g | ]}t  d |¡ ¡ ‘qS )zname="(.*)",value="(.*)")ÚreÚmatchÚgroups)r&   r	   r!   r!   r"   Ú
<listcomp>1   s   ÿÿzTest.test.<locals>.<listcomp>z1\.234r   z\(1, 2, 3\)r   z\(0x0, \(1, 2, 3\), 4\)r   z\\n\[0. 1. 2. 3. 4.\]r   z1\\n\[\[1.\+0.j 0.\+3.j\]\\n \[2.\+0.j 0.\+4.j\]\]r   z'Some stringL-Padded string'r   z11\+22jr   z\\n\[\[ 0  3\]\\n \[12 15\]\]r   z\\n\[\(0, 0.\) \(0, 0.\)\]r   )r   r   Zint16Zfloat64r   r   Zextension_locr   Ú__file__Zset_breakpointÚrunZcheck_hit_breakpointZstack_list_variablesZ	_capturedÚafterÚdecodeÚ
splitlinesr*   r+   r,   ÚsplitÚdictÚitemsÚassertRegexÚquit)Úselfr#   Ú	extensionZdriverÚoutputZdone_strÚpatZ	lcls_strsZlclsÚexpectedr'   r(   r!   r    r"   Útest   s<    

ÿ
z	Test.testN)Ú__name__Ú
__module__Ú__qualname__r=   r!   r!   r!   r"   r      s   r   Ú__main__)Znumbar   Únumpyr   Znumba.tests.gdb_supportr   r   Znumba.tests.supportr   r   Znumba.misc.numba_gdbinfor   Zunittestr*   r   r>   Úmainr!   r!   r!   r"   Ú<module>   s   7