import string from redis.commands.helpers import ( delist, list_or_args, nativestr, parse_to_list, quote_string, random_string ) def test_list_or_args(): k = ["hello, world"] a = ["some", "argument", "list"] assert list_or_args(k, a) == k+a for i in ["banana", b"banana"]: assert list_or_args(i, a) == [i] + a def test_parse_to_list(): r = ["hello", b"my name", "45", "555.55", "is simon!", None] assert parse_to_list(r) == \ ["hello", "my name", 45, 555.55, "is simon!", None] def test_nativestr(): assert nativestr('teststr') == 'teststr' assert nativestr(b'teststr') == 'teststr' assert nativestr('null') is None def test_delist(): assert delist(None) is None assert delist([b'hello', 'world', b'banana']) == \ ['hello', 'world', 'banana'] def test_random_string(): assert len(random_string()) == 10 assert len(random_string(15)) == 15 for a in random_string(): assert a in string.ascii_lowercase def test_quote_string(): assert quote_string("hello world!") == '"hello world!"' assert quote_string('') == '""' assert quote_string('hello world!') == '"hello world!"'