
    (i                     >    d dl mZ d dlmZ d dlmZ  G d de      Zy)    )Optional)RPC)Modulec                   Z    e Zd ZdeddfdZddeddfdZdefdZddZdd	ee   ddfd
Z	y)Testing	timestampreturnNc                 n    | j                   j                  j                  t        j                  |g       y N)w3managerrequest_blockingr   testing_timeTravel)selfr   s     =/var/www/br/venv/lib/python3.12/site-packages/web3/testing.py
timeTravelzTesting.timeTravel   s"    (()?)?)M    
num_blocksc                 n    | j                   j                  j                  t        j                  |g       y r   )r   r   r   r   evm_mine)r   r   s     r   minezTesting.mine   s     ((
|Dr   c                     | j                   j                  j                  t        j                  g       | _        | j
                  S r   )r   r   r   r   evm_snapshotlast_snapshot_idxr   s    r   snapshotzTesting.snapshot   s2    !%!A!A#BRBRTV!W%%%r   c                 l    | j                   j                  j                  t        j                  g        y r   )r   r   r   r   	evm_resetr   s    r   resetzTesting.reset   s    ((;r   snapshot_idxc                     || j                   }n|}| j                  j                  j                  t        j
                  |g       y r   )r   r   r   r   r   
evm_revert)r   r    revert_targets      r   revertzTesting.revert   s6     22M(M((-Ir   )   )r	   Nr   )
__name__
__module____qualname__intr   r   r   r   r   r$    r   r   r   r      sY    NC ND NEs E4 E&# &<J8C= JD Jr   r   N)typingr   web3._utils.rpc_abir   web3.moduler   r   r*   r   r   <module>r.      s"   
Jf Jr   