a
    ze                     @   sh   d dl Z d dlZd dlZd dlmZ d dlZd dlmZmZ e  G dd dejZ	e
dkrde  dS )    N)mock)skip_if_missingimport_toolc                   @   s   e Zd Zdd Zdd ZdS )Gprof2htmlTestsc                    s0   t d| _tj  fdd}| | g t_d S )N
gprof2htmlc                      s
    t _d S )N)sysargv Zoldargvr	   5/usr/lib/python3.9/test/test_tools/test_gprof2html.pyfixup   s    z$Gprof2htmlTests.setUp.<locals>.fixup)r   gprofr   r   Z
addCleanup)selfr   r	   r
   r   setUp   s
    

zGprof2htmlTests.setUpc              	   C   s   t j| jdh}t @}tj|d}t	|d
  d|gt_| j  W d    n1 s`0    Y  W d    n1 s~0    Y  | |j	j d S )NZ
webbrowserabcwr   )r   Zpatchobjectr   tempfileTemporaryDirectoryospathjoinopencloser   r   mainZ
assertTrueZcalled)r   ZwmockZtmpdirfnr	   r	   r   
test_gprof   s    
FzGprof2htmlTests.test_gprofN)__name__
__module____qualname__r   r   r	   r	   r	   r   r      s   r   __main__)r   r   Zunittestr   r   Ztest.test_toolsr   r   ZTestCaser   r   r   r	   r	   r	   r   <module>   s   