def test_roundtrip_file_random(self): for _ in range(500): v = get_random_object() s = io.BytesIO() tnetstring.dump(v, s) s.write(b'OK') s.seek(0) self.assertEqual(v, tnetstring.load(s)) self.assertEqual(b'OK', s.read())
def test_serialize(self): b = io.BytesIO() d = tflow.twebsocketflow().get_state() tnetstring.dump(d, b) assert b.getvalue() b = io.BytesIO() d = tflow.twebsocketflow().handshake_flow.get_state() tnetstring.dump(d, b) assert b.getvalue()
def test_versioncheck(self): f = tflow.tflow() d = f.get_state() d["version"] = (0, 0) sio = io.BytesIO() tnetstring.dump(d, sio) sio.seek(0) r = mitmproxy.io.FlowReader(sio) with pytest.raises(Exception, match="version"): list(r.stream())
def test_roundtrip_file_examples(self): for data, expect in FORMAT_EXAMPLES.items(): s = io.BytesIO() s.write(data) s.write(b'OK') s.seek(0) self.assertEqual(expect, tnetstring.load(s)) self.assertEqual(b'OK', s.read()) s = io.BytesIO() tnetstring.dump(expect, s) s.write(b'OK') s.seek(0) self.assertEqual(expect, tnetstring.load(s)) self.assertEqual(b'OK', s.read())
def add(self, f: flow.Flow): if self.flt and not flowfilter.match(self.flt, f): return d = f.get_state() tnetstring.dump(d, self.fo)
def add(self, flow): d = flow.get_state() tnetstring.dump(d, self.fo)