summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xtest.py5
-rw-r--r--wsgitools/filters.py3
2 files changed, 7 insertions, 1 deletions
diff --git a/test.py b/test.py
index cf40b92..2d1d29d 100755
--- a/test.py
+++ b/test.py
@@ -377,7 +377,10 @@ class RequestLogWSGIFilterTest(unittest.TestCase):
def testSimple(self):
app = applications.StaticContent("200 Found",
[("Content-Type", "text/plain")], b"nothing")
- log = io.StringIO()
+ if isinstance("x", bytes):
+ log = io.BytesIO()
+ else:
+ log = io.StringIO()
logfilter = filters.RequestLogWSGIFilter.creator(log)
app = filters.WSGIFilterMiddleware(app, logfilter)
req = Request(self)
diff --git a/wsgitools/filters.py b/wsgitools/filters.py
index 882a0bf..471c949 100644
--- a/wsgitools/filters.py
+++ b/wsgitools/filters.py
@@ -217,6 +217,9 @@ class RequestLogWSGIFilter(BaseWSGIFilter):
"""Returns a function creating L{RequestLogWSGIFilter}s on given log
file. log has to be a file-like object.
@type log: file-like
+ @param log: elements of type str are written to the log. That means in
+ Py3.X the contents are decoded and in Py2.X the log is assumed
+ to be encoded in latin1. This follows the spirit of WSGI.
@type flush: bool
@param flush: if True, invoke the flush method on log after each
write invocation