test_protocol.py 文件源码

python
阅读 22 收藏 0 点赞 0 评论 0

项目:txdarn 作者: markrwilliams 项目源码 文件源码
def test_beginRequest_finishedNotifier_forwards_failures(self):
        '''Beginning a request retrieves a Deferred from that request that
        forwards failures to the protocol's connectionLost.

        '''
        self.protocol.request = self.request
        self.protocol.beginRequest()

        reason = connectionDone

        def assertConnectionLostCalled(ignored):
            recordedExceptions = [
                reason.value for reason in
                self.sessionMachineRecorder.connectionsLostReasons]
            self.assertEqual(recordedExceptions, [reason.value])

        finishedNotifier = self.protocol.finishedNotifier
        finishedNotifier.addCallback(assertConnectionLostCalled)

        def trapConnectionDone(failure):
            failure.trap(error.ConnectionDone)

        terminationDeferred = self.protocol.terminationDeferred
        terminationDeferred.addErrback(trapConnectionDone)

        self.request.processingFailed(reason)
        return DeferredList([finishedNotifier, terminationDeferred])
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号