diff options
author | Maximilian Hils <git@maximilianhils.com> | 2017-08-24 18:57:32 +0200 |
---|---|---|
committer | Maximilian Hils <git@maximilianhils.com> | 2017-08-24 18:57:32 +0200 |
commit | 72ac89f666d0093f523998eaa2a5ff9a41a26ff7 (patch) | |
tree | 3d36d50d5d648d0b44d9944aa284218d917ea9d2 /test | |
parent | 6350d5a19edafa992b53073610f05c0d38f28ddd (diff) | |
download | mitmproxy-72ac89f666d0093f523998eaa2a5ff9a41a26ff7.tar.gz mitmproxy-72ac89f666d0093f523998eaa2a5ff9a41a26ff7.tar.bz2 mitmproxy-72ac89f666d0093f523998eaa2a5ff9a41a26ff7.zip |
add strutils.escape_special_areas
Diffstat (limited to 'test')
-rw-r--r-- | test/mitmproxy/utils/test_strutils.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/test/mitmproxy/utils/test_strutils.py b/test/mitmproxy/utils/test_strutils.py index bacd7f62..ea3569c0 100644 --- a/test/mitmproxy/utils/test_strutils.py +++ b/test/mitmproxy/utils/test_strutils.py @@ -96,3 +96,25 @@ def test_clean_hanging_newline(): def test_hexdump(): assert list(strutils.hexdump(b"one\0" * 10)) + + +ESCAPE_QUOTES = [ + ("'", strutils.NO_ESCAPE + "'"), + ('"', strutils.NO_ESCAPE + '"') +] + + +def test_split_special_areas(): + assert strutils.split_special_areas("foo", ESCAPE_QUOTES) == ["foo"] + assert strutils.split_special_areas("foo 'bar' baz", ESCAPE_QUOTES) == ["foo ", "'bar'", " baz"] + assert strutils.split_special_areas( + """foo 'b\\'a"r' baz""", + ESCAPE_QUOTES + ) == ["foo ", "'b\\'a\"r'", " baz"] + + +def test_escape_special_areas(): + assert strutils.escape_special_areas('foo "bar" baz', ESCAPE_QUOTES, "*") == 'foo "bar" baz' + esc = strutils.escape_special_areas('foo "b*r" b*z', ESCAPE_QUOTES, "*") + assert esc == 'foo "b\ue02ar" b*z' + assert strutils.unescape_special_areas(esc) == 'foo "b*r" b*z' |