rendered paste body def test_consecutive_with_close(self):
"""Test two consecutive requests on the same URI, closing the client between the two
"""
res_dfr = defer.Deferred()
def first_request_done(response):
self.assertEqual(response.code, 200)
def do_second_request():
close_dfr = self.client.close()
close_dfr.addCallback(closed)
def closed():
open_dfr = self.client.open('localhost', SERVER_PORT)
open_dfr.addCallback(opened)
def opened():
second_request_dfr = self.client.request('/')
second_request_dfr.addCallback(second_request_done)
second_request_dfr.chainDeferred(res_dfr)
do_second_request()
return response
def second_request_done(response):
self.assertEqual(response.code, 200)
return response
first_request_dfr = self.client.request('/')
first_request_dfr.addCallback(first_request_done)
first_request_dfr.addErrback(res_dfr.errback)
return res_dfr