From cccdc9842648518de7ee48ce461801954fc334c8 Mon Sep 17 00:00:00 2001 From: Aldo Cortesi Date: Thu, 2 Jun 2016 12:31:41 +1200 Subject: Utils reorganisation: add netlib.strutils Extract a number of string and format-related functions to netlib.strutils. --- test/netlib/test_strutils.py | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 test/netlib/test_strutils.py (limited to 'test/netlib/test_strutils.py') diff --git a/test/netlib/test_strutils.py b/test/netlib/test_strutils.py new file mode 100644 index 00000000..34f2750d --- /dev/null +++ b/test/netlib/test_strutils.py @@ -0,0 +1,40 @@ +# coding=utf-8 + +from netlib import strutils + + +def test_clean_bin(): + assert strutils.clean_bin(b"one") == b"one" + assert strutils.clean_bin(b"\00ne") == b".ne" + assert strutils.clean_bin(b"\nne") == b"\nne" + assert strutils.clean_bin(b"\nne", False) == b".ne" + assert strutils.clean_bin(u"\u2605".encode("utf8")) == b"..." + + assert strutils.clean_bin(u"one") == u"one" + assert strutils.clean_bin(u"\00ne") == u".ne" + assert strutils.clean_bin(u"\nne") == u"\nne" + assert strutils.clean_bin(u"\nne", False) == u".ne" + assert strutils.clean_bin(u"\u2605") == u"\u2605" + + +def test_safe_subn(): + assert strutils.safe_subn("foo", u"bar", "\xc2foo") + + +def test_bytes_to_escaped_str(): + assert strutils.bytes_to_escaped_str(b"foo") == "foo" + assert strutils.bytes_to_escaped_str(b"\b") == r"\x08" + assert strutils.bytes_to_escaped_str(br"&!?=\)") == r"&!?=\\)" + assert strutils.bytes_to_escaped_str(b'\xc3\xbc') == r"\xc3\xbc" + assert strutils.bytes_to_escaped_str(b"'") == r"\'" + assert strutils.bytes_to_escaped_str(b'"') == r'"' + + +def test_escaped_str_to_bytes(): + assert strutils.escaped_str_to_bytes("foo") == b"foo" + assert strutils.escaped_str_to_bytes("\x08") == b"\b" + assert strutils.escaped_str_to_bytes("&!?=\\\\)") == br"&!?=\)" + assert strutils.escaped_str_to_bytes("ü") == b'\xc3\xbc' + assert strutils.escaped_str_to_bytes(u"\\x08") == b"\b" + assert strutils.escaped_str_to_bytes(u"&!?=\\\\)") == br"&!?=\)" + assert strutils.escaped_str_to_bytes(u"ü") == b'\xc3\xbc' -- cgit v1.2.3 From 09da1febbd9beac5ef5650274899439f5ce10e98 Mon Sep 17 00:00:00 2001 From: Aldo Cortesi Date: Thu, 2 Jun 2016 13:03:37 +1200 Subject: Shift a bunch more string-related functions to strutils --- test/netlib/test_strutils.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'test/netlib/test_strutils.py') diff --git a/test/netlib/test_strutils.py b/test/netlib/test_strutils.py index 34f2750d..734265c4 100644 --- a/test/netlib/test_strutils.py +++ b/test/netlib/test_strutils.py @@ -38,3 +38,26 @@ def test_escaped_str_to_bytes(): assert strutils.escaped_str_to_bytes(u"\\x08") == b"\b" assert strutils.escaped_str_to_bytes(u"&!?=\\\\)") == br"&!?=\)" assert strutils.escaped_str_to_bytes(u"ü") == b'\xc3\xbc' + + +def test_isBin(): + assert not strutils.isBin("testing\n\r") + assert strutils.isBin("testing\x01") + assert strutils.isBin("testing\x0e") + assert strutils.isBin("testing\x7f") + + +def test_isXml(): + assert not strutils.isXML("foo") + assert strutils.isXML("