3
¢ fN ã @ s> d Z ddlmZ G dd„ dƒZG dd„ dƒZG dd„ dƒZd S )
zqMock classes that imitate idlelib modules or classes.
Attributes and methods will be added as needed for tests.
é )ÚTextc @ s" e Zd ZdZddd„Zdd„ ZdS ) ÚFuncaZ Record call, capture args, return/raise result set by test.
When mock function is called, set or use attributes:
self.called - increment call number even if no args, kwds passed.
self.args - capture positional arguments.
self.kwds - capture keyword arguments.
self.result - return or raise value set in __init__.
self.return_self - return self instead, to mock query class return.
Most common use will probably be to mock instance methods.
Given class instance, can set and delete as instance attribute.
Mock_tk.Var and Mbox_func are special variants of this.
NFc C s" d| _ || _|| _d | _d | _d S )Nr )ÚcalledÚresultÚreturn_selfÚargsÚkwds)Úselfr r © r
ú@/opt/alt/python36/lib64/python3.6/idlelib/idle_test/mock_idle.pyÚ__init__ s
z
Func.__init__c O sB | j d7 _ || _|| _t| jtƒr.| j‚n| jr8| S | jS d S )Né )r r r Ú
isinstancer Ú
BaseExceptionr )r r r r
r
r Ú__call__ s z
Func.__call__)NF)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r r r
r
r
r r s
r c @ s" e Zd ZdZddd„Zdd„ ZdS )ÚEditorz1Minimally imitate editor.EditorWindow class.
Nc C s t ƒ | _tƒ | _d S )N)r ÚtextÚ
UndoDelegatorZundo)r ZflistÚfilenameÚkeyÚrootr
r
r r + s zEditor.__init__c C s | j jdƒ}| j jdƒ}||fS )Nz1.0Úend)r Úindex)r ÚfirstZlastr
r
r Úget_selection_indices/ s zEditor.get_selection_indices)NNNN)r r r r r r r
r
r
r r ( s
r c @ s e Zd ZdZdd„ Zdd„ ZdS )r z0Minimally imitate undo.UndoDelegator class.
c G s d S )Nr
)r r
r
r Úundo_block_start9 s zUndoDelegator.undo_block_startc G s d S )Nr
)r r
r
r Úundo_block_stop; s zUndoDelegator.undo_block_stopN)r r r r r r r
r
r
r r 5 s r N)r Zidlelib.idle_test.mock_tkr r r r r
r
r
r Ú