ÿØÿàJFIFÿþ ÿÛC       ÿÛC ÿÀÿÄÿÄ"#QrÿÄÿÄ&1!A"2qQaáÿÚ ?Øy,æ/3JæÝ¹È߲؋5êXw²±ÉyˆR”¾I0ó2—PI¾IÌÚiMö¯–þrìN&"KgX:Šíµ•nTJnLK„…@!‰-ý ùúmë;ºgµŒ&ó±hw’¯Õ@”Ü— 9ñ-ë.²1<yà‚¹ïQÐU„ہ?.’¦èûbß±©Ö«Âw*VŒ) `$‰bØÔŸ’ëXÖ-ËTÜíGÚ3ð«g Ÿ§¯—Jx„–’U/ÂÅv_s(Hÿ@TñJÑãõçn­‚!ÈgfbÓc­:él[ðQe 9ÀPLbÃãCµm[5¿ç'ªjglå‡Ûí_§Úõl-;"PkÞÞÁQâ¼_Ñ^¢SŸx?"¸¦ùY騐ÒOÈ q’`~~ÚtËU¹CڒêV  I1Áß_ÿÙ {fc@s\dZddlmZdefdYZdefdYZdefdYZd S( sqMock classes that imitate idlelib modules or classes. Attributes and methods will be added as needed for tests. i(tTexttFunccBs#eZdZddZdZRS(sMock function captures args and returns result set by test. Attributes: self.called - records call even if no args, kwds passed. self.result - set by init, returned by call. self.args - captures positional arguments. self.kwds - captures keyword arguments. Most common use will probably be to mock methods. Mock_tk.Var and Mbox_func are special variants of this. cCs(t|_||_d|_d|_dS(N(tFalsetcalledtresulttNonetargstkwds(tselfR((s3/usr/lib64/python2.7/idlelib/idle_test/mock_idle.pyt__init__s   cOsDt|_||_||_t|jtr9|jn|jSdS(N(tTrueRRRt isinstanceRt BaseException(RRR((s3/usr/lib64/python2.7/idlelib/idle_test/mock_idle.pyt__call__s     N(t__name__t __module__t__doc__RR R (((s3/usr/lib64/python2.7/idlelib/idle_test/mock_idle.pyRs  tEditorcBs,eZdZdddddZdZRS(s7Minimally imitate EditorWindow.EditorWindow class. cCst|_t|_dS(N(Rttextt UndoDelegatortundo(Rtflisttfilenametkeytroot((s3/usr/lib64/python2.7/idlelib/idle_test/mock_idle.pyR &s cCs.|jjd}|jjd}||fS(Ns1.0tend(Rtindex(Rtfirsttlast((s3/usr/lib64/python2.7/idlelib/idle_test/mock_idle.pytget_selection_indices*sN(RRRRR R(((s3/usr/lib64/python2.7/idlelib/idle_test/mock_idle.pyR#sRcBs eZdZdZdZRS(s9Minimally imitate UndoDelegator,UndoDelegator class. cGsdS(N((R((s3/usr/lib64/python2.7/idlelib/idle_test/mock_idle.pytundo_block_start4scGsdS(N((R((s3/usr/lib64/python2.7/idlelib/idle_test/mock_idle.pytundo_block_stop6s(RRRRR(((s3/usr/lib64/python2.7/idlelib/idle_test/mock_idle.pyR0s N(Rtidlelib.idle_test.mock_tkRtobjectRRR(((s3/usr/lib64/python2.7/idlelib/idle_test/mock_idle.pyts