| Server IP : 195.114.193.97 / Your IP : 216.73.217.93 Web Server : LiteSpeed System : Linux host 5.15.0-126-generic #136-Ubuntu SMP Wed Nov 6 10:38:22 UTC 2024 x86_64 User : sembi4241 ( 1126) PHP Version : 8.1.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /lib/python3/dist-packages/twisted/python/__pycache__/ |
Upload File : |
o
�bt � @ s G d d� d�Z dS )c @ s@ e Zd ZdZdd� Zdd� Zdd� Zdd � Zd
d� Zdd
� Z dS )�
MonkeyPatcherzn
Cover up attributes with new objects. Neat for monkey-patching things for
unit-testing purposes.
c G s$ g | _ g | _|D ]}| j|� qd S )N)�_patchesToApply�
_originals�addPatch)�self�patches�patch� r �7/usr/lib/python3/dist-packages/twisted/python/monkey.py�__init__
s
�zMonkeyPatcher.__init__c C s | j �|||f� dS )z�
Add a patch so that the attribute C{name} on C{obj} will be assigned to
C{value} when C{patch} is called or during C{runWithPatches}.
You can restore the original values with a call to restore().
N)r �append�r �obj�name�valuer r r r s zMonkeyPatcher.addPatchc C s, | j D ]\}}}||f||fkr dS qdS )zc
Has the C{name} attribute of C{obj} already been patched by this
patcher?
TF)r )r r
r �o�n�vr r r �_alreadyPatched s
�zMonkeyPatcher._alreadyPatchedc C sF | j D ]\}}}| �||�s| j�||t||�f� t|||� qdS )z�
Apply all of the patches that have been specified with L{addPatch}.
Reverse this operation using L{restore}.
N)r r r r �getattr�setattrr r r r r ) s
�zMonkeyPatcher.patchc C s0 | j r| j �� \}}}t|||� | j sdS dS )zE
Restore all original values to any patched objects.
N)r �popr r r r r �restore3 s �zMonkeyPatcher.restorec O s, | � � z||i |��W | �� S | �� w )z�
Apply each patch already specified. Then run the function f with the
given args and kwargs. Restore everything when done.
)r r )r �f�args�kwr r r �runWithPatches; s zMonkeyPatcher.runWithPatchesN)
�__name__�
__module__�__qualname__�__doc__r
r r r r r r r r r r s
r N)r r r r r �<module> s