๎ e f ใ@sณdZddlmZddlZddlmZddlmZmZm Z ddl m Z Gdd„dej ƒZ Gd d „d ej ƒZed krฏejd d ƒndS)z5Unittest for idlelib.WidgetRedirector 100% coverage ้)ฺrequiresN)ฺFunc)ฺTkฺTextฺTclError)ฺWidgetRedirectorc@sLeZdZedd„ƒZedd„ƒZdd„Zdd„Zd S) ฺ InitCloseTestcCs,tdƒtƒ|_t|jƒ|_dS)Nฺgui)rrฺtkrฺtext)ฺclsฉr ๚G/opt/alt/python34/lib64/python3.4/idlelib/idle_test/test_widgetredir.pyฺ setUpClasss  zInitCloseTest.setUpClasscCs*|jjƒ|jjƒ|`|`dS)N)r ฺdestroyr )r r r rฺ tearDownClasss  zInitCloseTest.tearDownClasscCsbt|jƒ}|j|j|jƒ|j|j|jjƒ|jtt|jƒ|jƒdS)N)rr ฺ assertEqualฺwidgetr Z assertRaisesrฺclose)ฺselfฺredirr r rฺ test_inits zInitCloseTest.test_initcCsYt|jƒ}|jdtƒ|jƒ|j|jiƒ|jt|jdƒƒdS)Nฺinsertr) rr ฺregisterrrrฺ _operationsฺ assertFalseฺhasattr)rrr r rฺ test_close!s  zInitCloseTest.test_closeN)ฺ__name__ฺ __module__ฺ __qualname__ฺ classmethodrrrrr r r rr s  rc@sธeZdZedd„ƒZedd„ƒZdd„Zdd„Zd d „Zd d „Z d d„Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„ZdS)ฺWidgetRedirectorTestcCs,tdƒtƒ|_t|jƒ|_dS)Nr )rrr rr )r r r rr+s  zWidgetRedirectorTest.setUpClasscCs*|jjƒ|jjƒ|`|`dS)N)r rr )r r r rr1s  z"WidgetRedirectorTest.tearDownClasscCsPt|jƒ|_tƒ|_|jjd|jƒ|_|jjddƒdS)Nrฺasdf)rr rrฺfuncrฺ orig_insertr)rr r rฺsetUp7s zWidgetRedirectorTest.setUpcCs$|jjddƒ|jjƒdS)Nz1.0ฺend)r ฺdeleterr)rr r rฺtearDown=szWidgetRedirectorTest.tearDowncCs6|jdt|jƒƒ|jdt|jƒƒdS)NZ RedirectorZOriginal)ฺassertInฺreprrr%)rr r rฺ test_reprAszWidgetRedirectorTest.test_reprcCs~|j|jjddƒdƒ|j|jjdƒ|jd|jjƒ|jd|jjƒ|j|jj |jƒdS)Nz1.0r'ฺ rr#)zinsertzasdf) rr ฺgetr$ฺargsr*rrฺ__dict__r)rr r rฺ test_registerEs z"WidgetRedirectorTest.test_registercCsh|j|jjdƒ|j|jj|jjjƒ|jddƒ|j|jjddƒdƒdS)Nrr#z1.0r'zasdf )rr%Z operationZtk_callr r ฺcallr.)rr r rฺtest_original_commandLsz*WidgetRedirectorTest.test_original_commandcCsh|j|jjdƒƒ|j|jjdƒ|jƒ|jd|jjƒ|jd|jjƒdS)Nzinvalid operation namer) Z assertIsNonerฺ unregisterrr$Z assertNotInrr r0)rr r rฺtest_unregisterRsz$WidgetRedirectorTest.test_unregistercCs,|j`|j|jjdƒ|jƒdS)Nr)r rrrr4r$)rr r rฺtest_unregister_no_attributeXs z1WidgetRedirectorTest.test_unregister_no_attributecCsG|jjdƒ|j|jjddƒƒ|j|jjdƒdS)NTrFr)r$ฺ__init__Z assertTruerฺdispatchrr/)rr r rฺtest_dispatch_intercept\sz,WidgetRedirectorTest.test_dispatch_interceptcCsU|jddƒ|j|jjdddƒdƒ|j|jjddƒdƒdS)Nrr#r(z1.0r'ฺr-)r%rrr8r r.)rr r rฺtest_dispatch_bypassas"z)WidgetRedirectorTest.test_dispatch_bypasscCsR|jjtƒƒ|j|jjddƒdƒ|j|jjdƒdƒdS)NrFr:Zinvalid)r$r7rrrr8)rr r rฺtest_dispatch_errorgsz(WidgetRedirectorTest.test_dispatch_errorcCs|jj|jjddƒ|j|jjdƒ|j|jjddƒdƒ|jjt ƒƒ|j|jj|jjddƒdƒdS) Nrฺhelloz1.0r'r-Zboor:)r=) r r2r Z_wrr$r/r.r7r)rr r rฺtest_command_dispatchls z*WidgetRedirectorTest.test_command_dispatchN)rrr r!rrr&r)r,r1r3r5r6r9r;r<r>r r r rr")s           r"ฺ__main__ฺ verbosity้)ฺ__doc__Z test.supportrZunittestZidlelib.idle_test.mock_idlerZtkinterrrrZidlelib.WidgetRedirectorrZTestCaserr"rฺmainr r r rฺs P