<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
B
    YI~d!                 @   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mZ d dl mZ d dlZd dlmZ ejZG d	d
 d
ejZG dd dejZG dd dejZG dd dZG dd dejZedkrejdd dS )    )
help_aboutN)requiresfindfile)TkTclError)Func)	Mbox_func)textview)python_versionc               @   sL   e Zd Zedd Zedd Zdd Zdd Zd	d
 Zdd Z	dd Z
dS )LiveDialogTestc             C   s0   t d t | _| j  t| jddd| _d S )Nguiz
About IDLET)_utest)r   r   rootwithdrawAboutdialog)cls r   F/opt/alt/python37/lib64/python3.7/idlelib/idle_test/test_help_about.py
setUpClass   s    
zLiveDialogTest.setUpClassc             C   s    | ` | j  | j  | `d S )N)r   r   update_idletasksdestroy)r   r   r   r   tearDownClass   s    

zLiveDialogTest.tearDownClassc             C   s   |  t d d S )N)Z32Z64)ZassertInr   
build_bits)selfr   r   r   test_build_bits&   s    zLiveDialogTest.test_build_bitsc             C   s   |  | j d d S )Nz
About IDLE)assertEqualr   title)r   r   r   r   test_dialog_title)   s    z LiveDialogTest.test_dialog_titlec             C   s8   t j| jjd \}}t j|\}}| |d d S )NfileZidle_48)ospathsplitr   Z
icon_imagesplitextr   )r   r!   r   fnZextr   r   r   test_dialog_logo-   s    zLiveDialogTest.test_dialog_logoc          
   C   s   | j }|jtdf|jtdf|jtdfg}x|D ]\}}}| j|dz |  |	  |j
jjjj}|j}t|dk r| |d  | |d |dd	 | |d
 |dd |j
  W d Q R X q.W d S )Nlicense	copyrightcredits)name   z full text was not foundr   z1.0z1.end   z2.0z2.end)r   Z
py_licenser&   Zpy_copyrightr'   Z
py_creditsr(   subTest_Printer__setupinvoke_current_textview	viewframe	textframetextget_Printer__lineslenZfailr   r   )r   r   button_sourcesbuttonZprinterr)   r3   linesr   r   r   test_printer_buttons3   s    

z#LiveDialogTest.test_printer_buttonsc       	      C   s   | j }| j jddf| j jddf| j jddfg}x|D ]\}}}| j|d |  t|dd	}|jjj	j
j}t|d
dB}| |  |dd |  | |  |dd W d Q R X |j  W d Q R X q4W d S )Nz
README.txtreadmezNEWS.txtZnewszCREDITS.txtr(   )r)   idlelib)Zsubdirzutf-8)encodingz1.0z1.endz3.0z3.end)r   r:   	idle_newsidle_creditsr,   r.   r   r/   r0   r1   r2   r3   openr   readlinestripr   )	r   r   r6   r7   filenamer)   r$   r3   fr   r   r   test_file_buttonsF   s    $z LiveDialogTest.test_file_buttonsN)__name__
__module____qualname__classmethodr   r   r   r   r%   r9   rD   r   r   r   r   r      s   r   c               @   s,   e Zd Zedd Zedd Zdd ZdS )DefaultTitleTestc             C   s.   t d t | _| j  t| jdd| _d S )Nr   T)r   )r   r   r   r   r   r   )r   r   r   r   r   \   s    
zDefaultTitleTest.setUpClassc             C   s    | ` | j  | j  | `d S )N)r   r   r   r   )r   r   r   r   r   c   s    

zDefaultTitleTest.tearDownClassc             C   s*   |  | j dt  dt  d d S )NzAbout IDLE z (z bit))r   r   r   r
   r   r   )r   r   r   r   r   j   s    z"DefaultTitleTest.test_dialog_titleN)rE   rF   rG   rH   r   r   r   r   r   r   r   rI   Y   s   rI   c               @   s,   e Zd Zedd Zedd Zdd ZdS )	CloseTestc             C   s0   t d t | _| j  t| jddd| _d S )Nr   z
About IDLET)r   )r   r   r   r   r   r   )r   r   r   r   r   t   s    
zCloseTest.setUpClassc             C   s    | ` | j  | j  | `d S )N)r   r   r   r   )r   r   r   r   r   {   s    

zCloseTest.tearDownClassc          	   C   sB   |  | j d | jj  | t | j  W d Q R X d S )NZToplevel)r   r   Zwinfo_classZ	button_okr.   ZassertRaisesr   )r   r   r   r   
test_close   s    zCloseTest.test_closeN)rE   rF   rG   rH   r   r   rK   r   r   r   r   rJ   q   s   rJ   c               @   s(   e Zd ZejZejZejZ	ej
Z
dZdS )Dummy_about_dialogTN)rE   rF   rG   r   Zshow_idle_creditsr>   Zshow_readmeidle_readmeZshow_idle_newsr=   Zdisplay_file_textr   r   r   r   r   rL      s
   rL   c               @   s2   e Zd Ze Zedd Zedd Zdd ZdS )DisplayFileTestc             C   s4   t j| _t j| _t | _t | _| jt _| jt _d S )N)	r	   	showerror
orig_error	view_text	orig_viewr   errorr   view)r   r   r   r   r      s    zDisplayFileTest.setUpClassc             C   s   | j t_| jt_d S )N)rP   r	   rO   rR   rQ   )r   r   r   r   r      s    zDisplayFileTest.tearDownClassc          
   C   sr   xl| j j| j j| j jfD ]R}d| j_d| j_| j|d, |  | 	| jjd | 	| jjd W d Q R X qW d S )N F)handlerT)
r   r>   rM   r=   rS   messagerT   Zcalledr,   r   )r   rV   r   r   r   test_file_display   s    z!DisplayFileTest.test_file_displayN)	rE   rF   rG   rL   r   rH   r   r   rX   r   r   r   r   rN      s   	rN   __main__r*   )	verbosity)r;   r   ZunittestZtest.supportr   r   Ztkinterr   r   Zidlelib.idle_test.mock_idler   Zidlelib.idle_test.mock_tkr   r	   Zos.pathr    platformr
   ZAboutDialogr   ZTestCaser   rI   rJ   rL   rN   rE   mainr   r   r   r   <module>   s    F
"