From ae553ef472d63e6b05d87f1ad28c604e0fb67347 Mon Sep 17 00:00:00 2001 From: Shadab Zafar Date: Sat, 4 Jun 2016 15:00:31 +0530 Subject: [PATCH 1/3] Fix Docstring: "inject" can be an action too --- pathod/language/writer.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pathod/language/writer.py b/pathod/language/writer.py index 22e32ce27..b8081989d 100644 --- a/pathod/language/writer.py +++ b/pathod/language/writer.py @@ -22,8 +22,8 @@ def write_values(fp, vals, actions, sofar=0, blocksize=BLOCKSIZE): """ vals: A list of values, which may be strings or Value objects. - actions: A list of (offset, action, arg) tuples. Action may be "pause" - or "disconnect". + actions: A list of (offset, action, arg) tuples. Action may be "inject", + "pause" or "disconnect". Both vals and actions are in reverse order, with the first items last. From 614a3d7a54ee761f7f26a8994d357b0b2fc55834 Mon Sep 17 00:00:00 2001 From: Shadab Zafar Date: Sat, 4 Jun 2016 15:12:29 +0530 Subject: [PATCH 2/3] Py3: Use global next() instead of iterator method --- test/pathod/test_language_writer.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/pathod/test_language_writer.py b/test/pathod/test_language_writer.py index 0a85524f4..37e6ba2be 100644 --- a/test/pathod/test_language_writer.py +++ b/test/pathod/test_language_writer.py @@ -77,14 +77,14 @@ def test_write_values_pauses(): def test_write_values_after(): s = StringIO() - r = language.parse_pathod("400:da").next() + r = next(language.parse_pathod("400:da")) language.serve(r, s, {}) s = StringIO() - r = language.parse_pathod("400:pa,0").next() + r = next(language.parse_pathod("400:pa,0")) language.serve(r, s, {}) s = StringIO() - r = language.parse_pathod("400:ia,'xx'").next() + r = next(language.parse_pathod("400:ia,'xx'")) language.serve(r, s, {}) assert s.getvalue().endswith('xx') From bd7b275d441bd06d48132b6fa6ea211a56ca991b Mon Sep 17 00:00:00 2001 From: Shadab Zafar Date: Sat, 4 Jun 2016 15:13:07 +0530 Subject: [PATCH 3/3] Py3: Convert all data to bytes in pathod.language.writer test --- test/pathod/test_language_writer.py | 56 ++++++++++++++--------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/test/pathod/test_language_writer.py b/test/pathod/test_language_writer.py index 37e6ba2be..c02f66f33 100644 --- a/test/pathod/test_language_writer.py +++ b/test/pathod/test_language_writer.py @@ -1,53 +1,53 @@ -from six.moves import cStringIO as StringIO +from six import BytesIO from pathod import language from pathod.language import writer def test_send_chunk(): - v = "foobarfoobar" + v = b"foobarfoobar" for bs in range(1, len(v) + 2): - s = StringIO() + s = BytesIO() writer.send_chunk(s, v, bs, 0, len(v)) assert s.getvalue() == v for start in range(len(v)): for end in range(len(v)): - s = StringIO() + s = BytesIO() writer.send_chunk(s, v, bs, start, end) assert s.getvalue() == v[start:end] def test_write_values_inject(): - tst = "foo" + tst = b"foo" - s = StringIO() - writer.write_values(s, [tst], [(0, "inject", "aaa")], blocksize=5) - assert s.getvalue() == "aaafoo" + s = BytesIO() + writer.write_values(s, [tst], [(0, "inject", b"aaa")], blocksize=5) + assert s.getvalue() == b"aaafoo" - s = StringIO() - writer.write_values(s, [tst], [(1, "inject", "aaa")], blocksize=5) - assert s.getvalue() == "faaaoo" + s = BytesIO() + writer.write_values(s, [tst], [(1, "inject", b"aaa")], blocksize=5) + assert s.getvalue() == b"faaaoo" - s = StringIO() - writer.write_values(s, [tst], [(1, "inject", "aaa")], blocksize=5) - assert s.getvalue() == "faaaoo" + s = BytesIO() + writer.write_values(s, [tst], [(1, "inject", b"aaa")], blocksize=5) + assert s.getvalue() == b"faaaoo" def test_write_values_disconnects(): - s = StringIO() - tst = "foo" * 100 + s = BytesIO() + tst = b"foo" * 100 writer.write_values(s, [tst], [(0, "disconnect")], blocksize=5) assert not s.getvalue() def test_write_values(): - tst = "foobarvoing" - s = StringIO() + tst = b"foobarvoing" + s = BytesIO() writer.write_values(s, [tst], []) assert s.getvalue() == tst for bs in range(1, len(tst) + 2): for off in range(len(tst)): - s = StringIO() + s = BytesIO() writer.write_values( s, [tst], [(off, "disconnect")], blocksize=bs ) @@ -55,36 +55,36 @@ def test_write_values(): def test_write_values_pauses(): - tst = "".join(str(i) for i in range(10)) + tst = "".join(str(i) for i in range(10)).encode() for i in range(2, 10): - s = StringIO() + s = BytesIO() writer.write_values( s, [tst], [(2, "pause", 0), (1, "pause", 0)], blocksize=i ) assert s.getvalue() == tst for i in range(2, 10): - s = StringIO() + s = BytesIO() writer.write_values(s, [tst], [(1, "pause", 0)], blocksize=i) assert s.getvalue() == tst - tst = ["".join(str(i) for i in range(10))] * 5 + tst = [tst] * 5 for i in range(2, 10): - s = StringIO() + s = BytesIO() writer.write_values(s, tst[:], [(1, "pause", 0)], blocksize=i) - assert s.getvalue() == "".join(tst) + assert s.getvalue() == b"".join(tst) def test_write_values_after(): - s = StringIO() + s = BytesIO() r = next(language.parse_pathod("400:da")) language.serve(r, s, {}) - s = StringIO() + s = BytesIO() r = next(language.parse_pathod("400:pa,0")) language.serve(r, s, {}) - s = StringIO() + s = BytesIO() r = next(language.parse_pathod("400:ia,'xx'")) language.serve(r, s, {}) assert s.getvalue().endswith('xx')