HEX

Warning: set_time_limit() [function.set-time-limit]: Cannot set time limit - prohibited by configuration in /home/u547966/brikov.ru/www/wp-content/plugins/admin-menu-editor/menu-editor.php on line 745
Server: Apache
System: Linux 4.19.0-0.bpo.9-amd64 x86_64 at red40
User: u547966 (5490)
PHP: 5.3.29-mh2
Disabled: syslog, dl, popen, proc_open, proc_nice, proc_get_status, proc_close, proc_terminate, posix_mkfifo, chown, chgrp, accelerator_reset, opcache_reset, accelerator_get_status, opcache_get_status, pcntl_alarm, pcntl_fork, pcntl_waitpid, pcntl_wait, pcntl_wifexited, pcntl_wifstopped, pcntl_wifsignaled, pcntl_wifcontinued, pcntl_wexitstatus, pcntl_wtermsig, pcntl_wstopsig, pcntl_signal, pcntl_signal_dispatch, pcntl_get_last_error, pcntl_strerror, pcntl_sigprocmask, pcntl_sigwaitinfo, pcntl_sigtimedwait, pcntl_exec, pcntl_getpriority, pcntl_setpriority
Upload Files
File: //usr/lib/python3.5/asyncio/__pycache__/test_utils.cpython-35.pyc


Fa7@sdZddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlZddl
Z
ddlZddl
mZddlmZddlmZmZyddlZWnek
rdZYnXddlmZddlmZdd	lmZdd
lmZddlmZddlmZdd
lmZddl m!Z!e	j"dkrddl#m$Z$nddlm$Z$ddZ%ddZ&dddZ'ddZ(GdddeZ)GdddeZ*GdddZ+Gd d!d!e+e*Z,d"d#d$d%Z-e.ed&r
Gd'd(d(ej/eZ0Gd)d*d*e0eZ1Gd+d,d,e1Z2Gd-d.d.e+e2Z3d/d0Z4ej5d1d2Z6ej5d"d#d3d4Z7ej5d5d6d7dd"d#d8d9Z8d:d;Z9Gd<d=d=ej:Z;Gd>d?d?ej<Z=d@dAZ>GdBdCdCe?Z@dDdEZAGdFdGdGe
jBZBej5dHdIZCejDejEejFdJdKZGdLdMZHdS)NzUtilities shared by tests.N)mock)
HTTPServer)WSGIRequestHandler
WSGIServer)base_events)compat)events)futures)	selectors)tasks)	coroutine)loggerZwin32)
socketpaircCs$tdkrdStjtjSdS)N)sslZ
SSLContextZPROTOCOL_SSLv23rr(/usr/lib/python3.5/asyncio/test_utils.pydummy_ssl_context,src
CsVtdd}|}|j|}d|_z|j|Wd|jXdS)NcSsdS)Nrrrrronce4szrun_briefly.<locals>.onceF)r
Zcreate_taskZ_log_destroy_pendingrun_until_completeclose)looprgentrrrrun_briefly3s		rcCsttj|}x]|so|dk	rP|tj}|dkrPtj|jtjdd|qWdS)NrgMbP?r)timer
TimeoutErrorrrZsleep)rZpredtimeoutZdeadlinerrr	run_untilBsrcCs|j|j|jdS)zLegacy API to run once through the event loop.

    This is the recommended pattern for test code.  It will poll the
    selector once and run all callbacks scheduled in response to I/O
    events.
    N)Z	call_soonstopZrun_forever)rrrrrun_onceLsr!c@s(eZdZddZddZdS)SilentWSGIRequestHandlercCs
tjS)N)ioStringIO)selfrrr
get_stderrYsz#SilentWSGIRequestHandler.get_stderrcGsdS)Nr)r%formatargsrrrlog_message\sz$SilentWSGIRequestHandler.log_messageN)__name__
__module____qualname__r&r)rrrrr"Wsr"cs4eZdZdZfddZddZS)SilentWSGIServercs/tj\}}|j|j||fS)N)superget_request
settimeoutrequest_timeout)r%requestclient_addr)	__class__rrr0dszSilentWSGIServer.get_requestcCsdS)Nr)r%r3client_addressrrrhandle_erroriszSilentWSGIServer.handle_error)r*r+r,r2r0r7rr)r5rr-`sr-c@seZdZddZdS)SSLWSGIServerMixincCstjjtjjtdd}tjj|s]tjjtjjtjdd}tjj|d}tjj|d}tj|d|d|d	d
}y!|j||||j	Wnt
k
rYnXdS)Nz..ZtestsZtestZtest_asynciozssl_key.pemzssl_cert.pemkeyfilecertfileZserver_sideT)ospathjoindirname__file__isdirrZwrap_socketZRequestHandlerClassrOSError)r%r3r6herer9r:Zssockrrrfinish_requestos$	
z!SSLWSGIServerMixin.finish_requestN)r*r+r,rCrrrrr8msr8c@seZdZdS)
SSLWSGIServerN)r*r+r,rrrrrDsrDuse_sslFc
#sdd}|r|n|}||tj|j_tjdfdd}|jz	VWdjj|j	XdS)NcSs#d}dg}|||dgS)Nz200 OKContent-type
text/plainsTest message)rFrGr)environZstart_responseZstatusZheadersrrrapps	
z_run_test_server.<locals>.apptargetcsjddS)NZ
poll_intervalg?)Z
serve_foreverr)httpdrr<lambda>sz"_run_test_server.<locals>.<lambda>)
r"Zset_appZserver_addressaddress	threadingZThreadstartZshutdownZserver_closer=)rMrE
server_clsserver_ssl_clsrIZserver_classZ
server_threadr)rKr_run_test_servers
	
	

rRZAF_UNIXc@seZdZddZdS)UnixHTTPServercCs&tjj|d|_d|_dS)Nz	127.0.0.1P)socketserverUnixStreamServerserver_bindZserver_nameZserver_port)r%rrrrWs	zUnixHTTPServer.server_bindN)r*r+r,rWrrrrrSsrScs4eZdZdZddZfddZS)UnixWSGIServerr.cCstj||jdS)N)rSrWZ
setup_environ)r%rrrrWs
zUnixWSGIServer.server_bindcs/tj\}}|j|j|dfS)N	127.0.0.1)rYrZ)r/r0r1r2)r%r3r4)r5rrr0szUnixWSGIServer.get_request)r*r+r,r2rWr0rr)r5rrXsrXc@seZdZddZdS)SilentUnixWSGIServercCsdS)Nr)r%r3r6rrrr7sz!SilentUnixWSGIServer.handle_errorN)r*r+r,r7rrrrr[sr[c@seZdZdS)UnixSSLWSGIServerN)r*r+r,rrrrr\sr\c	Cs!tj}|jSWdQRXdS)N)tempfileZNamedTemporaryFilename)filerrrgen_unix_socket_pathsr`ccs@t}z	|VWdytj|Wntk
r:YnXXdS)N)r`r;unlinkrA)r<rrrunix_socket_paths		
rbccs;t+}td|d|dtdtEdHWdQRXdS)NrMrErPrQ)rbrRr[r\)rEr<rrrrun_test_unix_serversrchostz	127.0.0.1portc	cs.td||fd|dtdtEdHdS)NrMrErPrQ)rRr-rD)rdrerErrrrun_test_serversrfcCsni}xHt|D]:}|jdr:|jdr:qtdd||<qWtd|f|j|S)N__return_valueZTestProtocol)dir
startswithendswithMockCallbacktype	__bases__)baseZdctr^rrrmake_test_protocolsrpc@sOeZdZddZdddZddZdd	Zd
dZdS)TestSelectorcCs
i|_dS)N)keys)r%rrr__init__szTestSelector.__init__NcCs)tj|d||}||j|<|S)Nr)rZSelectorKeyrr)r%fileobjr	datakeyrrrregisters
zTestSelector.registercCs|jj|S)N)rrpop)r%rtrrr
unregisterszTestSelector.unregistercCsgS)Nr)r%rrrrselectszTestSelector.selectcCs|jS)N)rr)r%rrrget_mapszTestSelector.get_map)r*r+r,rsrwryrzr{rrrrrqs
rqcs!eZdZdZdfddZddZddZfd	d
ZddZd
dZ	ddZ
ddZddZddZ
ddZddZddZddZdd Zd!d"Zfd#d$Zfd%d&Zd'd(Zd)d*ZS)+TestLoopaLoop for unittests.

    It manages self time directly.
    If something scheduled to be executed later then
    on next loop iteration after all ready handlers done
    generator passed to __init__ is calling.

    Generator should be like this:

        def gen():
            ...
            when = yield ...
            ... = yield time_advance

    Value returned by yield is absolute time of next scheduled handler.
    Value passed to yield is time advance to move loop's time forward.
    Ncstj|dkr1dd}d|_n	d|_||_t|jd|_d|_g|_t|_	i|_
i|_|jt
j|_dS)Ncss	dVdS)Nrrrrrr szTestLoop.__init__.<locals>.genFTrg&.>)r/rs_check_on_close_gennext_timeZ_clock_resolution_timersrqZ	_selectorreaderswritersreset_countersweakrefWeakValueDictionary_transports)r%r)r5rrrss
	
					
zTestLoop.__init__cCs|jS)N)r)r%rrrr3sz
TestLoop.timecCs|r|j|7_dS)zMove test time forward.N)r)r%advancerrradvance_time6szTestLoop.advance_timecsOtj|jrKy|jjdWntk
r>Yn
XtddS)NrzTime generator is not finished)r/rr}r~send
StopIterationAssertionError)r%)r5rrr;s
	
zTestLoop.closecGs tj||||j|<dS)N)r	Handler)r%fdcallbackr(rrr_add_readerEszTestLoop._add_readercCs6|j|d7<||jkr.|j|=dSdSdS)NrTF)remove_reader_countr)r%rrrr_remove_readerHs

zTestLoop._remove_readercGs||jks$tdj||j|}|j|ks[tdj|j||j|kstdj|j|dS)Nzfd {} is not registeredz{!r} != {!r})rrr'	_callback_args)r%rrr(handlerrr
assert_readerPs$
zTestLoop.assert_readercGs tj||||j|<dS)N)r	rr)r%rrr(rrr_add_writerXszTestLoop._add_writercCs6|j|d7<||jkr.|j|=dSdSdS)NrTF)remove_writer_countr)r%rrrr_remove_writer[s

zTestLoop._remove_writercGs||jks$tdj||j|}|j|ks[tdj|j||j|kstdj|j|dS)Nzfd {} is not registeredz{!r} != {!r})rrr'rr)r%rrr(rrrr
assert_writercs$
zTestLoop.assert_writercCsBy|j|}Wntk
r%YnXtdj||dS)Nz.File descriptor {!r} is used by transport {!r})rKeyErrorRuntimeErrorr')r%rZ	transportrrr_ensure_fd_no_transportks
z TestLoop._ensure_fd_no_transportcGs |j||j|||S)zAdd a reader callback.)rr)r%rrr(rrr
add_readerus
zTestLoop.add_readercCs|j||j|S)zRemove a reader callback.)rr)r%rrrr
remove_readerzs
zTestLoop.remove_readercGs |j||j|||S)zAdd a writer callback..)rr)r%rrr(rrr
add_writers
zTestLoop.add_writercCs|j||j|S)zRemove a writer callback.)rr)r%rrrr
remove_writers
zTestLoop.remove_writercCs(tjt|_tjt|_dS)N)collectionsdefaultdictintrr)r%rrrrszTestLoop.reset_counterscsMtjx0|jD]%}|jj|}|j|qWg|_dS)N)r/	_run_oncerr~rr)r%whenr)r5rrrs

zTestLoop._run_oncecs&|jj|tj|||S)N)rappendr/call_at)r%rrr()r5rrrszTestLoop.call_atcCsdS)Nr)r%Z
event_listrrr_process_eventsszTestLoop._process_eventscCsdS)Nr)r%rrr_write_to_selfszTestLoop._write_to_self)r*r+r,__doc__rsrrrrrrrrrrrrrrrrrrrrr)r5rr|	s*

r|cKstjddg|S)Nspec__call__)rZMock)kwargsrrrrlsrlc@s"eZdZdZddZdS)MockPatternzA regex based str with a fuzzy __eq__.

    Use this helper with 'mock.assert_called_with', or anywhere
    where a regex comparison between strings is needed.

    For instance:
       mock_call.assert_called_with(MockPattern('spam.*ham'))
    cCs"ttjt||tjS)N)boolresearchstrS)r%otherrrr__eq__szMockPattern.__eq__N)r*r+r,rrrrrrrsrcCs2tj|}|dkr.td|f|S)Nzunable to get the source of %r)r	Z_get_function_source
ValueError)funcsourcerrrget_function_sourcesrc@s^eZdZddddZdddZdd	Zd
dZejsZdd
Z	dS)TestCasecleanupTcCs9|dk	sttjd|r5|j|jdS)N)rr	set_event_loopZ
addCleanupr)r%rrrrrrs
zTestCase.set_event_loopNcCst|}|j||S)N)r|r)r%rrrrr
new_test_loops
zTestCase.new_test_loopcCstj|_ddt_dS)NcSsdS)NrrrrrrLsz TestCase.setUp.<locals>.<lambda>)r	_get_running_loop)r%rrrsetUpszTestCase.setUpcCs3|jt_tjd|jtjddS)N)NNN)rr	rZassertEqualsysexc_info)r%rrrtearDowns
zTestCase.tearDowncOsGddd}|S)Nc@s(eZdZddZddZdS)z!TestCase.subTest.<locals>.EmptyCMcSsdS)Nr)r%rrr	__enter__sz+TestCase.subTest.<locals>.EmptyCM.__enter__cWsdS)Nr)r%excrrr__exit__sz*TestCase.subTest.<locals>.EmptyCM.__exit__N)r*r+r,rrrrrrEmptyCMsrr)r%r(rrrrrsubTestszTestCase.subTest)
r*r+r,rrrrrZPY34rrrrrrs		rccs;tj}ztjtjddVWdtj|XdS)zrContext manager to disable asyncio logger.

    For example, it can be used to ignore warnings in debug mode.
    rN)rlevelZsetLevelloggingZCRITICAL)Z	old_levelrrrdisable_loggers
		rcCs=tjtj}||_||_||_d|j_|S)z'Create a mock of a non-blocking socket.g)rZ	MagicMocksocketprotormfamilyZ
gettimeoutrh)rrmrZsockrrrmock_nonblocking_sockets			rcCstjdddS)Nz'asyncio.sslproto._is_sslproto_availablerhF)rZpatchrrrrforce_legacy_ssl_supportsr)Irr
contextlibr#rr;rrrUrr]rNrZunittestrrZhttp.serverrZwsgiref.simple_serverrrrImportErrorrZrrr	r
rrZ
coroutinesr
logrplatformZ
windows_utilsrrrrr!r"r-r8rDrRhasattrrVrSrXr[r\r`contextmanagerrbrcrfrpZBaseSelectorrqZ
BaseEventLoopr|rlrrrrrZIPPROTO_TCPZSOCK_STREAMZAF_INETrrrrrr<module>s~

	
		

%