
”àWî  ã               @   s«   d  Z  d d l Z d d l m Z m Z m Z d d l m Z e j	 Z
 Gd d „  d ƒ Z e j Z e j Z Gd d „  d e j ƒ Z e d	 k r§ e j d
 d d d ƒ d S)z*Unittests for idlelib.configHelpSourceEdité    N)ÚVarÚMboxÚEntry)ÚconfigHelpSourceEditc               @   sp   e  Z d  Z e j Z e j Z e j Z e j Z e ƒ  Z	 e
 ƒ  Z e ƒ  Z e
 ƒ  Z d Z d Z d d „  Z d S)ÚDummy_help_dialogNFc             C   s   d |  _  d  S)NT)Ú	destroyed)Úself© r	   úE/afs/.cs/s/python-3.5.2/amd64_ubu14/lib/python3.5/test_config_help.pyÚdestroy   s    zDummy_help_dialog.destroy)Ú__name__Ú
__module__Ú__qualname__Úhelp_dialogÚmenu_okÚpath_okÚokÚcancelr   Úmenur   Z	entryMenuÚpathZ	entryPathÚresultr   r   r	   r	   r	   r
   r   	   s   								r   c               @   s©   e  Z d  Z e ƒ  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 d „  Z d d „  Z d d „  Z d d „  Z d S)ÚConfigHelpTestc             C   s   t  t _ d  S)N)r   Úhelp_dialog_moduleÚtkMessageBox)Úclsr	   r	   r
   Ú
setUpClass#   s    zConfigHelpTest.setUpClassc             C   s   t  t _ d  S)N)Ú	orig_mboxr   r   )r   r	   r	   r
   ÚtearDownClass'   s    zConfigHelpTest.tearDownClassc             C   sS   |  j  j j d ƒ |  j |  j  j ƒ  ƒ |  j t j d ƒ |  j d t j	 ƒ d  S)NÚ zMenu Item ErrorÚNo)
Údialogr   ÚsetÚassertFalser   ÚassertEqualÚ	showerrorÚtitleÚassertInÚmessage)r   r	   r	   r
   Útest_blank_menu+   s    zConfigHelpTest.test_blank_menuc             C   sW   |  j  j j d d ƒ |  j |  j  j ƒ  ƒ |  j t j d ƒ |  j d t j	 ƒ d  S)NZhelloé
   zMenu Item ErrorÚlong)
r    r   r!   r"   r   r#   r$   r%   r&   r'   )r   r	   r	   r
   Útest_long_menu1   s    zConfigHelpTest.test_long_menuc             C   sI   |  j  j j d ƒ d t _ |  j |  j  j ƒ  ƒ |  j t j d ƒ d  S)NÚhelpzNo Error)r    r   r!   r$   r%   Ú
assertTruer   r#   )r   r	   r	   r
   Útest_good_menu7   s    	zConfigHelpTest.test_good_menuc             C   sS   |  j  j j d ƒ |  j |  j  j ƒ  ƒ |  j t j d ƒ |  j d t j	 ƒ d  S)Nr   zFile Path Errorr   )
r    r   r!   r"   r   r#   r$   r%   r&   r'   )r   r	   r	   r
   Útest_blank_path=   s    zConfigHelpTest.test_blank_pathc             C   sW   |  j  j j d d ƒ |  j |  j  j ƒ  ƒ |  j t j d ƒ |  j d t j	 ƒ d  S)NZfoobaréd   zFile Path Errorz	not exist)
r    r   r!   r"   r   r#   r$   r%   r&   r'   )r   r	   r	   r
   Útest_invalid_file_pathC   s    z%ConfigHelpTest.test_invalid_file_pathc             C   s¢   |  j  j j d ƒ |  j |  j  j ƒ  ƒ |  j t j d ƒ |  j d t j	 ƒ |  j  j j d ƒ |  j |  j  j ƒ  ƒ |  j t j d ƒ |  j d t j	 ƒ d  S)Nzww.foobar.comzFile Path Errorz	not existzhtt.foobar.com)
r    r   r!   r"   r   r#   r$   r%   r&   r'   )r   r	   r	   r
   Útest_invalid_url_pathI   s    z$ConfigHelpTest.test_invalid_url_pathc             C   sI   |  j  j j d ƒ d t _ |  j |  j  j ƒ  ƒ |  j t j d ƒ d  S)Nzhttps://docs.python.orgzNo Error)r    r   r!   r$   r%   r-   r   r#   )r   r	   r	   r
   Útest_good_pathT   s    	zConfigHelpTest.test_good_pathc             C   sl   d |  j  _ |  j  j j d ƒ |  j  j j d ƒ |  j  j ƒ  |  j |  j  j d ƒ |  j |  j  j ƒ d  S)NFr,   úhttps://docs.python.org)zhelpr4   )	r    r   r   r!   r   r   r#   r   r-   )r   r	   r	   r
   Útest_okZ   s    zConfigHelpTest.test_okc             C   sF   d |  j  _ |  j  j ƒ  |  j |  j  j d  ƒ |  j |  j  j ƒ d  S)NF)r    r   r   r#   r   r-   )r   r	   r	   r
   Útest_cancelc   s    zConfigHelpTest.test_cancelN)r   r   r   r   r    Úclassmethodr   r   r(   r+   r.   r/   r1   r2   r3   r5   r6   r	   r	   r	   r
   r       s   		r   Ú__main__Ú	verbosityé   ÚexitF)Ú__doc__ZunittestZidlelib.idle_test.mock_tkr   r   r   Zidlelibr   r   ZGetHelpSourceDialogr   r   r   r   r$   ZTestCaser   r   Úmainr	   r	   r	   r
   Ú<module>   s   			I