
    h                     X    S r SS/rSSKrSSKrSSKJr   " S S\5      r " S S\5      rg)z/
Testing helpers related to the module system.
	NoReactorAlternateReactor    N)SetAsideModulec                   *    \ rS rSrSrS rS rS rSrg)r      zW
Context manager that uninstalls the reactor, if any, and then restores it
afterwards.
c                 2    [         R                  " U S5        g Nztwisted.internet.reactor)r   __init__selfs    j/root/1688_scrapy/alibaba-scraper/venv/lib/python3.13/site-packages/twisted/internet/test/modulehelpers.pyr
   NoReactor.__init__   s    &@A    c                 r    [         R                  " U 5        SU R                  ;   a  [        R                  ?g g r	   )r   	__enter__modulestwistedinternetreactorr   s    r   r   NoReactor.__enter__   s-      &%5  ( 6r   c                     [         R                  " XX#5        U R                  R                  SS 5      nUb  U[        R
                  l        g  [        R
                  ?g ! [         a     g f = fr	   )r   __exit__r   getr   r   r   AttributeError)r   excTypeexcValue	tracebackr   s        r   r   NoReactor.__exit__   sb    xC ,,""#=tD'.G$$$,! s   A 
A,+A, N)	__name__
__module____qualname____firstlineno____doc__r
   r   r   __static_attributes__r   r   r   r   r      s    
B)
r   c                   $    \ rS rSrSrS rS rSrg)r   -   zX
A context manager which temporarily installs a different object as the
global reactor.
c                 :    [         R                  U 5        Xl        g)z>
@param reactor: Any object to install as the global reactor.
N)r   r
   	alternate)r   r   s     r   r
   AlternateReactor.__init__3   s     	4  r   c                     [         R                  U 5        U R                  [        R                  l        U R                  [        R                  S'   g r	   )r   r   r)   r   r   r   sysr   r   s    r   r   AlternateReactor.__enter__:   s5    D!#'>> 26.../r   )r)   N)r    r!   r"   r#   r$   r
   r   r%   r   r   r   r   r   -   s    
!Ar   )	r$   __all__r,   twisted.internetr   twisted.test.test_twistedr   r   r   r   r   r   <module>r1      s:   
 *
+ 
  4 8Ay Ar   