mirror of
https://github.com/vee1e/mitmproxy.git
synced 2026-09-04 19:57:16 +00:00
Fix bug in flow dumping, add unit test that should have caught this in the first place
This commit is contained in:
parent
e732771c1c
commit
0fe83ce87b
2 changed files with 16 additions and 2 deletions
|
|
@ -205,7 +205,7 @@ class DumpMaster(flow.FlowMaster):
|
|||
elif self.o.flow_detail >= 3:
|
||||
print >> self.outfile, str_request(f, self.showhost)
|
||||
print >> self.outfile, self.indent(4, f.request.headers)
|
||||
if utils.isBin(f.request.content):
|
||||
if f.request.content != http.CONTENT_MISSING and utils.isBin(f.request.content):
|
||||
d = netlib.utils.hexdump(f.request.content)
|
||||
d = "\n".join("%s\t%s %s"%i for i in d)
|
||||
print >> self.outfile, self.indent(4, d)
|
||||
|
|
|
|||
|
|
@ -1,10 +1,12 @@
|
|||
import os
|
||||
from cStringIO import StringIO
|
||||
from libmproxy import dump, flow, proxy
|
||||
from libmproxy import dump, flow
|
||||
from libmproxy.protocol import http
|
||||
from libmproxy.proxy.primitives import Log
|
||||
import tutils
|
||||
import mock
|
||||
|
||||
|
||||
def test_strfuncs():
|
||||
t = tutils.tresp()
|
||||
t.is_replay = True
|
||||
|
|
@ -58,6 +60,18 @@ class TestDumpMaster:
|
|||
assert m.handle_error(f)
|
||||
assert "error" in cs.getvalue()
|
||||
|
||||
def test_missing_content(self):
|
||||
cs = StringIO()
|
||||
o = dump.Options(flow_detail=3)
|
||||
m = dump.DumpMaster(None, o, outfile=cs)
|
||||
f = tutils.tflow()
|
||||
f.request.content = http.CONTENT_MISSING
|
||||
m.handle_request(f)
|
||||
f.response = tutils.tresp()
|
||||
f.response.content = http.CONTENT_MISSING
|
||||
m.handle_response(f)
|
||||
assert "content missing" in cs.getvalue()
|
||||
|
||||
def test_replay(self):
|
||||
cs = StringIO()
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue