Ñò
ô†³Kc @ sï d Z d d k Z d d k Td e f d „ ƒ YZ d d d d „ Z e d j oš d d k Z d d k l
Z
e e
ƒ Z d e i Z
d
„ Z d e d ƒ j p t ‚ d
e d ƒ j p t ‚ e i d ƒ e i ƒ e i e
ƒ n d S( s‚
WSGI Test Server
This builds upon paste.util.baseserver to customize it for regressions
where using raw_interactive won't do.
iÿÿÿÿN( t *t WSGIRegressionServerc B sV e Z d Z d Z d „ Z d „ Z d „ Z d „ Z d „ Z d „ Z d d „ Z
RS(
sN
A threaded WSGIServer for use in regression testing. To use this
module, call serve(application, regression=True), and then call
server.accept() to let it handle one request. When finished, use
server.stop() to shutdown the server. Note that all pending requests
are processed before the server shuts down.
i
c O sE t i | | | Ž g | _ g | _ | i | _ | i i d ƒ d S( Ni ( t
WSGIServert __init__t stoppingt pendingt defaulttimeoutt timeoutt sockett
settimeout( t selft argst kwargs( ( s: /usr/lib/python2.6/site-packages/paste/debug/testserver.pyR s
c C s0 d d k l } | d | i ƒ } | i ƒ d S( Niÿÿÿÿ( t Threadt target( t threadingR
t
serve_pendingt start( R
R
t thread( ( s: /usr/lib/python2.6/site-packages/paste/debug/testserver.pyt
serve_forever s c C s( | i o t i ƒ | i | _ n d S( N( R t timet expires( R
( ( s: /usr/lib/python2.6/site-packages/paste/debug/testserver.pyt
reset_expires$ s
c O s. t i | | | Ž | i i ƒ | i ƒ d S( N( R t
close_requestR t popR ( R
R R ( ( s: /usr/lib/python2.6/site-packages/paste/debug/testserver.pyR ' s
c C s€ | i ƒ xo | i p
| i oY t i ƒ } | | i j o | i o
d GHPn | i o | i ƒ n t i d ƒ q
Wd S( Ns0
WARNING: WSGIRegressionServer timeout exceeded
gš™™™™™¹?( R R R R R R t handle_requestt sleep( R
t now( ( s: /usr/lib/python2.6/site-packages/paste/debug/testserver.pyR + s
c C s | i i t ƒ d S( s/ stop the server (called from tester's thread) N( R t appendt True( R
( ( s: /usr/lib/python2.6/site-packages/paste/debug/testserver.pyt stop7 s i c C sG | i p t ‚ g } t | ƒ D] } | | i i t ƒ q# ~ d S( s6 accept another request (called from tester's thread) N( R t AssertionErrort rangeR R R ( R
t countt _[1]t x( ( s: /usr/lib/python2.6/site-packages/paste/debug/testserver.pyt accept: s ( t __name__t
__module__t __doc__R R R R R R R R$ ( ( ( s: /usr/lib/python2.6/site-packages/paste/debug/testserver.pyR s c C s/ t | | | | ƒ } d | i GH| i ƒ | S( Ns serving on %s:%s( R t server_addressR ( t applicationt hostt portt handlert server( ( s: /usr/lib/python2.6/site-packages/paste/debug/testserver.pyt serve? s
t __main__( t dump_environs http://%s:%sc C s= t i d ƒ d d k } | i d ƒ t i t | ƒ i ƒ S( Ni iÿÿÿÿi ( R- R$ R t setdefaulttimeoutt urllibt urlopent baseurit read( t pathR ( ( s: /usr/lib/python2.6/site-packages/paste/debug/testserver.pyt fetchK s
s PATH_INFO: /foos /foos PATH_INFO: /wombles /womblei ( R' R t paste.httpserverR R t NoneR. R% R2 t
paste.wsgilibR0 R- R( R4 R7 R R$ R R3 ( ( ( s: /usr/lib/python2.6/site-packages/paste/debug/testserver.pyt