def testDeferredErrorTranslator2(self): def bad(): return defer.fail(errors.CommandResultMissingException('lala')) bad = xmlrpc_error_translator(bad, deferred=True) def checkError(failure): failure.trap(xmlrpclib.Fault) self.assertEquals(failure.value.faultCode, errors.CommandResultMissingException.code) return bad().addCallback(lambda _: self.assert_(False)).addErrback(checkError)
def testDeferredErrorTranslator3(self): def verybad(): return defer.fail(KeyError('a')) verybad = xmlrpc_error_translator(verybad, deferred=True) def checkError(failure): failure.trap(xmlrpclib.Fault) self.assertEquals(failure.value.faultCode, errors.UnexpectedException.code) return verybad().addCallback(lambda _: self.assert_(False)).addErrback(checkError)
def testDeferredErrorTranslator1(self): def good(arg1, arg2 = 1): return defer.succeed(arg1) good = xmlrpc_error_translator(good, deferred=True) return good(25).addCallback(lambda result: self.assertEquals(result, 25))