Your IP : 172.28.240.42


Current Path : /usr/lib/python2.7/dist-packages/twisted/test/
Upload File :
Current File : //usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyc

ó
ê=Nc@sÛddd!ZddlmZddlmZddlmZdd*d„ƒYZd	d+d
„ƒYZdefd„ƒYZd
ej	fd„ƒYZ
dd,d„ƒYZdd-d„ƒYZdeej	fd„ƒYZ
deej	fd„ƒYZdeej	fd„ƒYZdeej	fd„ƒYZdej	fd„ƒYZdej	fd„ƒYZdd.d „ƒYZd!eej	fd"„ƒYZd#eej	fd$„ƒYZd%ej	fd&„ƒYZd'ej	fd(„ƒYZd)S(/s$Revision: 1.5 $iiþÿÿÿiÿÿÿÿ(tStringIO(tunittest(tpcptDummyTransportcBs)eZdZd„Zd„Zd„ZRS(s A dumb transport to wrap around.cCs
g|_dS(N(t_writes(tself((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyt__init__&scCs|jj|ƒdS(N(Rtappend(Rtdata((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pytwrite)scCsdj|jƒS(Nt(tjoinR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pytgetvalue,s(t__name__t
__module__t__doc__RR	R(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR#s		t
DummyProducercBs>eZeZeZeZd„Zd„Zd„Zd„Z	RS(cCs
||_dS(N(tconsumer(RR((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR4scCst|_t|_dS(N(tTruetresumedtFalsetpaused(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pytresumeProducing7s	cCs
t|_dS(N(RR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pytpauseProducing;scCs
t|_dS(N(Rtstopped(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyt
stopProducing>s(
R
RRRRRRRRR(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR/s			t
DummyConsumercBs5eZdZeZeZd„Zd„Z	d„Z
RS(cCs||f|_dS(N(tproducer(RRt	streaming((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pytregisterProducerGscCs
t|_dS(N(Rtunregistered(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pytunregisterProducerJscCs
t|_dS(N(Rtfinished(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pytfinishMsN(R
RtNoneRRR RRRRR!(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyRBs		tTransportInterfaceTestcBs#eZejZd„Zd„ZRS(cCs%tƒ|_|j|jƒ|_dS(N(Rt
underlyingt
proxyClasst	transport(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pytsetUpSscCs|jjdƒdS(Ns
some bytes(R&R	(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyt	testWriteWs(R
RRtBasicProducerConsumerProxyR%R'R((((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR#Ps		tConsumerInterfaceTestcBs2eZdZd„Zd„Zd„Zd„ZRS(sõTest ProducerConsumerProxy as a Consumer.

    Normally we have ProducingServer -> ConsumingTransport.

    If I am to go between (Server -> Shaper -> Transport), I have to
    play the role of Consumer convincingly for the ProducingServer.
    cCs7tƒ|_|j|jƒ|_t|jƒ|_dS(N(RR$R%RRR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR'cscCs-|jj|jtƒ|j|jjƒdS(N(RRRRtfailIfR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestRegisterPushhscCsS|jj|jtƒ|jjƒt|j_|jjƒ|j|jjƒdS(N(RRRRRRRR+(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestUnregisterts


cCsS|jj|jtƒ|jjƒt|j_|jjƒ|j|jjƒdS(N(RRRRR!RRR+(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyt
testFinishs


(R
RRR'R,R-R.(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR*Zs
			tProducerInterfaceTestcBsMeZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z	RS(søTest ProducerConsumerProxy as a Producer.

    Normally we have ProducingServer -> ConsumingTransport.

    If I am to go between (Server -> Shaper -> Transport), I have to
    play the role of Producer convincingly for the ConsumingTransport.
    cCs%tƒ|_|j|jƒ|_dS(N(RRR%R(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR'‘scCs!|j|jjd|jƒdS(Ni(tassertEqualRR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestRegistersProducer•scCs:|jjƒ|jjdƒ|j|jjƒdƒdS(Nsyakkity yaks*Paused producer should not have sent data.(RRR	R+RR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyt	testPause˜s
cCsG|jjƒ|jjƒ|jjdƒ|j|jjƒdƒdS(Nsyakkity yak(RRRR	R0RR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyt
testResumežs

cCs=|jjƒ|jjƒ|jt|jjƒddƒdS(Nis Resume triggered an empty write.(RRRR0tlenRR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestResumeNoEmptyWrite¤s

cCsG|jjƒ|jjdƒ|jjƒ|j|jjƒdƒdS(Nsbuffer this(RRR	RR0RR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestResumeBufferªs

cCs:|jjƒ|jjdƒ|j|jjƒdƒdS(Nsyakkity yaks+Stopped producer should not have sent data.(RRR	R+RR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestStop°s
(
R
RRR'R1R2R3R5R6R7(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR/ˆs						tPCP_ConsumerInterfaceTestcBseZejZRS((R
RRR)R%(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR8·stPCPII_ConsumerInterfaceTestcBseZejZRS((R
RRtProducerConsumerProxyR%(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR9ºstPCP_ProducerInterfaceTestcBseZejZRS((R
RRR)R%(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR;½stPCPII_ProducerInterfaceTestcBseZejZRS((R
RRR:R%(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR<ÀstProducerProxyTestcBs)eZdZejZd„Zd„ZRS(sFProducer methods on me should be relayed to the Producer I proxy.
    cCs>|jdƒ|_t|jƒ|_|jj|jtƒdS(N(R%R"tproxyRtparentProducerRR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR'ÈscCs$|jjƒ|j|jjƒdS(N(R>Rt
failUnlessR?R(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR7Ís
(R
RRRR)R%R'R7(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR=Ãs		tConsumerProxyTestcBs;eZdZejZd„Zd„Zd„Zd„Z	RS(sFConsumer methods on me should be relayed to the Consumer I proxy.
    cCs%tƒ|_|j|jƒ|_dS(N(RR$R%R(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR'×scCs-|jjdƒ|j|jjƒdƒdS(Ns
some bytes(RR	R0R$R(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR(ÛscCs$|jjƒ|j|jjƒdS(N(RR!R@R$R (R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR.às
cCs$|jjƒ|j|jjƒdS(N(RRR@R$R(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR-äs
(
R
RRRR)R%R'R(R.R-(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyRAÒs				tPullProducerTestcBs5eZd„Zd„Zd„Zd„Zd„ZRS(cCsMtƒ|_|j|jƒ|_t|jƒ|_|jj|jtƒdS(N(RR$R%R>RR?RR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR'êscCs-|jjdƒ|j|jjƒdƒdS(Nthellos+Pulling Consumer got data before it pulled.(R>R	R+R$R(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestHoldWritesðscCs:|jjdƒ|jjƒ|j|jjƒdƒdS(NRC(R>R	RR0R$R(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestPullös
cCsv|jjdƒ|jjdƒ|jjƒt|jjƒ}|j|dd|fƒ|j|jjƒdƒdS(Nshello tsunshineis(Pull resulted in %d writes instead of 1.shello sunshine(R>R	RR4R$RR0R(Rtnwrites((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestMergeWritesûs
cCs:|jjƒ|jjdƒ|j|jjƒdƒdS(NR(R>RR	R0R$R(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyt
testLateWrites
(R
RR'RDRERHRI(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyRBés
				
tPCP_PullProducerTestcBs!eZdejfd„ƒYZRS(R%cBseZeZRS((R
RRtiAmStreaming(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR%
s(R
RRR)R%(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyRJstPCPII_PullProducerTestcBs!eZdejfd„ƒYZRS(R%cBseZeZRS((R
RRRK(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR%s(R
RRR:R%(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyRLstBufferedConsumerTestcBsMeZdZejZd„Zd„Zd„Zd„Z	d„Z
d„ZRS(s=As a consumer, ask the producer to pause after too much data.cCsYtƒ|_|j|jƒ|_d|j_t|jƒ|_|jj|jtƒdS(Nid(	RR$R%R>t
bufferSizeRR?RR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR's
cCs-|jj|jtƒ|j|jjƒdS(N(R>RR?RR@R(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestRegisterPull#scCs$|jjƒ|j|jjƒdS(N(R>RR+R?R(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestPauseIntercept(s
cCs1|jjƒ|jjƒ|j|jjƒdS(N(R>RRR+R?R(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestResumeIntercept,s

cCsx|jjƒ|j|jjdƒ|jjddƒ|j|jjdƒ|jjddƒ|j|jjƒdS(sMake sure I say "when."sdon't pause yettxi3N(R>RR+R?RR	R@(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestTriggerPause4s
cCsq|jjƒ|jjddƒ|j|jjdƒ|jjƒ|j|jjdƒ|j|jjƒdS(s3Make sure I resumeProducing when my buffer empties.RRifsshould be pausedsProducer should have resumed.N(	R>RR	R@R?RRR+tproducerPaused(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestTriggerResume?s

(R
RRRR:R%R'RORPRQRSRU(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyRMs						tBufferedPullTestscBs<eZdejfd„ƒYZd„Zd„Zd„ZRS(R%cBseZeZd„ZRS(cCs*tjj||d ƒtt|ƒdƒS(Nid(RR:t_writeSomeDatatminR4(RR((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyRWOs(R
RRRKRW(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR%LscCsYtƒ|_|j|jƒ|_d|j_t|jƒ|_|jj|jtƒdS(Nid(	RR$R%R>RNRR?RR(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyR'Ss
cCs0t|j_|jjƒ|j|jjƒdS(N(RR?RR>RR@(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestResumePull[s
cCs[|jjƒ|jjddƒ|j|jjƒddƒ|j|jjdgƒdS(Ntdatumii(R>RR	R0R$Rt_buffer(R((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyttestLateWriteBufferingbs
(R
RRR:R%R'RYR\(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyRVKs		N((((((t__version__Rt
twisted.trialRttwisted.protocolsRRRRtTestCaseR#R*R/R8R9R;R<R=RARBRJRLRMRV(((s9/usr/lib/python2.7/dist-packages/twisted/test/test_pcp.pyt<module>s(

./#5