本文整理汇总了Python中seecr.test.CallTrace.exceptions方法的典型用法代码示例。如果您正苦于以下问题:Python CallTrace.exceptions方法的具体用法?Python CallTrace.exceptions怎么用?Python CallTrace.exceptions使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类seecr.test.CallTrace
的用法示例。
在下文中一共展示了CallTrace.exceptions方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: testKnownCodeException
# 需要导入模块: from seecr.test import CallTrace [as 别名]
# 或者: from seecr.test.CallTrace import exceptions [as 别名]
def testKnownCodeException(self):
dataRetrieve = HarvesterDataRetrieve()
observer = CallTrace('observer')
observer.exceptions = dict(getError=Exception('idDoesNotExist'))
dataRetrieve.addObserver(observer)
result = asString(dataRetrieve.handleRequest(arguments=dict(verb=['GetError'])))
header, body = result.split(CRLF*2,1)
self.assertEqual(okJson, header+CRLF*2)
self.assertEquals({'request': {'verb': 'GetError'}, 'error': {'message': 'The value of an argument (id or key) is unknown or illegal.', 'code': 'idDoesNotExist'}}, JsonDict.loads(body))
self.assertEquals(['getError'], observer.calledMethodNames())
示例2: testErrorInCall
# 需要导入模块: from seecr.test import CallTrace [as 别名]
# 或者: from seecr.test.CallTrace import exceptions [as 别名]
def testErrorInCall(self):
dataRetrieve = HarvesterDataRetrieve()
observer = CallTrace('observer')
observer.exceptions = dict(getError=Exception('Bad Bad Bad'))
dataRetrieve.addObserver(observer)
result = asString(dataRetrieve.handleRequest(arguments=dict(verb=['GetError'])))
header, body = result.split(CRLF*2,1)
self.assertEqual(okJson, header+CRLF*2)
self.assertEquals({'request': {'verb': 'GetError'}, 'error': {'message': "Exception('Bad Bad Bad',)", 'code': 'unknown'}}, JsonDict.loads(body))
self.assertEquals(['getError'], observer.calledMethodNames())
示例3: testGetUnexisting
# 需要导入模块: from seecr.test import CallTrace [as 别名]
# 或者: from seecr.test.CallTrace import exceptions [as 别名]
def testGetUnexisting(self):
dataRetrieve = HarvesterDataRetrieve()
observer = CallTrace('observer')
observer.exceptions=dict(getUnexisting=DeclineMessage())
dataRetrieve.addObserver(observer)
result = asString(dataRetrieve.handleRequest(arguments=dict(verb=['GetUnexisting'], argument=['value'])))
header, body = result.split(CRLF*2,1)
self.assertEqual(okJson, header+CRLF*2)
self.assertEquals({'request': {'verb': 'GetUnexisting', 'argument': 'value'}, 'error': {'message': 'Value of the verb argument is not a legal verb, the verb argument is missing, or the verb argument is repeated.', 'code': 'badVerb'}}, JsonDict.loads(body))
self.assertEquals(['getUnexisting'], observer.calledMethodNames())
self.assertEquals({'argument': 'value'}, observer.calledMethods[0].kwargs)
示例4: testKeepResumptionTokenOnFailingAddCall
# 需要导入模块: from seecr.test import CallTrace [as 别名]
# 或者: from seecr.test.CallTrace import exceptions [as 别名]
def testKeepResumptionTokenOnFailingAddCall(self):
resumptionToken = "u|c1286437597991025|mprefix|s|f"
open(join(self.tempdir, 'harvester.state'), 'w').write("Resumptiontoken: %s\n" % resumptionToken)
observer = CallTrace()
observer.exceptions={'add': Exception("Could be anything")}
oaiDownloadProcessor = OaiDownloadProcessor(path="/oai", metadataPrefix="oai_dc", workingDirectory=self.tempdir, xWait=True, err=StringIO())
oaiDownloadProcessor.addObserver(observer)
self.assertEquals('GET /oai?%s HTTP/1.0\r\nX-Meresco-Oai-Client-Identifier: %s\r\nUser-Agent: Meresco-Oai-DownloadProcessor/5.x\r\n\r\n' % (urlencode([('verb', 'ListRecords'), ('resumptionToken', resumptionToken), ('x-wait', 'True')]), oaiDownloadProcessor._identifier), oaiDownloadProcessor.buildRequest())
self.assertRaises(Exception, lambda: list(compose(oaiDownloadProcessor.handle(parse(StringIO(LISTRECORDS_RESPONSE % RESUMPTION_TOKEN))))))
self.assertEquals(['startOaiBatch', 'add', 'stopOaiBatch'], [m.name for m in observer.calledMethods])
errorOutput = oaiDownloadProcessor._err.getvalue()
self.assertTrue(errorOutput.startswith('Traceback'), errorOutput)
self.assertTrue('Exception: Could be anything\nWhile processing:\n<record xmlns="http://www.openarchives.org/OAI/2.0/"><header><identifier>oai:identifier:1' in errorOutput, errorOutput)
self.assertEquals('GET /oai?%s HTTP/1.0\r\nX-Meresco-Oai-Client-Identifier: %s\r\nUser-Agent: Meresco-Oai-DownloadProcessor/5.x\r\n\r\n' % (urlencode([('verb', 'ListRecords'), ('resumptionToken', resumptionToken), ('x-wait', 'True')]), oaiDownloadProcessor._identifier), oaiDownloadProcessor.buildRequest())
示例5: testHarvesterStateWithError
# 需要导入模块: from seecr.test import CallTrace [as 别名]
# 或者: from seecr.test.CallTrace import exceptions [as 别名]
def testHarvesterStateWithError(self):
resumptionToken = "u|c1286437597991025|mprefix|s|f"
open(join(self.tempdir, 'harvester.state'), 'w').write("Resumptiontoken: %s\n" % resumptionToken)
observer = CallTrace()
observer.exceptions={'add': Exception("Could be anything")}
oaiDownloadProcessor = OaiDownloadProcessor(path="/oai", metadataPrefix="oai_dc", workingDirectory=self.tempdir, xWait=True, err=StringIO(), name="Name")
oaiDownloadProcessor.addObserver(observer)
self.assertRaises(Exception, lambda: list(compose(oaiDownloadProcessor.handle(parse(StringIO(LISTRECORDS_RESPONSE % RESUMPTION_TOKEN))))))
state = oaiDownloadProcessor.getState()
self.assertEquals(resumptionToken, state.resumptionToken)
self.assertEquals(None, state.from_)
self.assertEquals("ERROR while processing 'oai:identifier:1': Could be anything", state.errorState)
self.assertEquals("Name", state.name)
oaiDownloadProcessor2 = OaiDownloadProcessor(path="/oai", metadataPrefix="oai_dc", workingDirectory=self.tempdir, xWait=True, err=StringIO())
state2 = oaiDownloadProcessor2.getState()
self.assertEquals(resumptionToken, state2.resumptionToken)
self.assertEquals("ERROR while processing 'oai:identifier:1': Could be anything", state2.errorState)