本文整理汇总了Python中seecr.test.CallTrace.methods["handleRequest"]方法的典型用法代码示例。如果您正苦于以下问题:Python CallTrace.methods["handleRequest"]方法的具体用法?Python CallTrace.methods["handleRequest"]怎么用?Python CallTrace.methods["handleRequest"]使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类seecr.test.CallTrace
的用法示例。
在下文中一共展示了CallTrace.methods["handleRequest"]方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: testLogRequestInCaseOfExceptionAfterStatusCode
# 需要导入模块: from seecr.test import CallTrace [as 别名]
# 或者: from seecr.test.CallTrace import methods["handleRequest"] [as 别名]
def testLogRequestInCaseOfExceptionAfterStatusCode(self):
requestHandler = CallTrace("handler", ignoredAttributes=["writeLog", "do_unknown"])
def handleRequestRaisesException(**kwargs):
yield Yield
yield okPlainText
yield "text"
raise ValueError("doesntreallymatter")
yield
requestHandler.methods["handleRequest"] = handleRequestRaisesException
stream = StringIO()
handleRequestLog = HandleRequestLog()
handleRequestLog._time = lambda: 1395409143.0
observable = be(
(Observable(), (LogCollector(), (handleRequestLog, (requestHandler,)), (ApacheLogWriter(stream),)))
)
result = []
g = compose(
observable.all.handleRequest(
Method="GET",
Client=("127.0.0.1", 1234),
RequestURI="http://example.org/path?key=value",
query="key=value",
path="/path",
Headers={"Referer": "http://meresco.org", "User-Agent": "Meresco-Components Test"},
otherKwarg="value",
)
)
try:
for x in g:
result.append(x)
except Exception:
pass
self.assertEquals([Yield, okPlainText, "text"], result)
self.assertEquals(["handleRequest"], requestHandler.calledMethodNames())
logline = stream.getvalue()
self.assertEquals(
'127.0.0.1 - - [21/Mar/2014:13:39:03 +0000] "GET /path?key=value HTTP/1.0" 200 64 "http://meresco.org" "Meresco-Components Test" Exception raised:\n ValueError(\'doesntreallymatter\',)\n',
logline,
)