B YI~d� �@s�ddlmZddlZddlmZddlZddlmZddl m Z dddhZ dhZ e e BZ Gd d �d ej�ZGd d �d ej�ZGd d�dej�Zedkr�ejdd�dS)�)�macosxN)�requires)�FileList�carbon�cocoa�xquartz�otherc@s,eZdZedd��Zedd��Zdd�ZdS)�InitTktypeTestcCs(td�t��|_|j��tj|_dS)N�gui)r�tk�Tk�root�withdrawr�platform� orig_platform)�cls�r�B/opt/alt/python37/lib64/python3.7/idlelib/idle_test/test_macosx.py� setUpClasss  zInitTktypeTest.setUpClasscCs$|j��|j��|`|jt_dS)N)r �update_idletasks�destroyrrr)rrrr� tearDownClasss  zInitTktypeTest.tearDownClassc Cs`xZdtfdtffD]F\}}|j|d��,|t_tjdkt��|�tj|�WdQRXqWdS)N�darwinr)r)�alltypes�nontypes�subTestrr�_tk_typeZ _init_tk_typeZassertIn)�selfr�typesrrr�test_init_sets_tktype s  z$InitTktypeTest.test_init_sets_tktypeN)�__name__� __module__� __qualname__� classmethodrrrrrrrr s  r c@sJeZdZejdfejdfejdfejdffZe � d�dd��Z dd �Z d S) � IsTypeTkTest)rrrrrzidlelib.macosx._init_tk_typec CsPdt_xD|jD]:\}}|j|d�� |�|�|j�|��WdQRXqWdS)N)�func)rr�isfuncsr� assertTrue�called� reset_mock)rZmockinitr%�whentruerrr�test_is_calls_init2s  zIsTypeTkTest.test_is_calls_initc Csbx\|jD]R\}}xHtD]@}|j|||d��&|t_||kr@|jn|j|��WdQRXqWqWdS)N)r%r*�tktype)r&rrrrr'Z assertFalse)rr%r*r,rrr� test_isfuncs<s  zIsTypeTkTest.test_isfuncsN) r r!r"rZisAquaTkZ isCarbonTkZ isCocoaTkZ isXQuartzr&�mock�patchr+r-rrrrr$*s   r$c@s6eZdZedd��Zedd��Ze�d�dd��ZdS) � SetupTestcs4td�t��|_|j���fdd���|j_dS)Nr csdS)Nr)Ztkpathr%)�cmdrrr1Nsz!SetupTest.setUpClass..cmd)rr r r rZ createcommand)rr)r1rrIs    zSetupTest.setUpClasscCs|j��|j��|`dS)N)r rr)rrrrrSs  zSetupTest.tearDownClasszidlelib.macosx.overrideRootMenuc Csf|j}t|�}xRtD]J}|j|d��4|t_t�||�|dkrL|�|j�|� �WdQRXqWdS)N)r,)rr) r rrrrrZsetupAppr'r(r))rZoverrideRootMenur �flistr,rrr� test_setupappYs   zSetupTest.test_setupappN) r r!r"r#rrr.r/r3rrrrr0Fs r0�__main__�)� verbosity)ZidlelibrZunittestZ test.supportrZtkinterr Z unittest.mockr.Zidlelib.filelistrZmactypesrrZTestCaser r$r0r �mainrrrr�s     !