From 654d7b147b1b17a4d3d9710b0c047b9c49566042 Mon Sep 17 00:00:00 2001 From: sagar-sehgal Date: Wed, 23 Jan 2019 03:49:22 +0530 Subject: [PATCH 1/2] updated the sequence function and added test cases --- tests/test_utils.py | 8 ++++++++ utils.py | 4 ++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/tests/test_utils.py b/tests/test_utils.py index 8c7f5c318..9a2139c9b 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -2,6 +2,14 @@ from utils import * import random +def test_sequence(): + assert sequence(1) == (1,) + assert sequence("helloworld") == "helloworld" + assert sequence({"hello":4,"world":5}) == ({"hello":4,"world":5},) + assert sequence([1,2,3]) == [1,2,3] + assert sequence((4,5,6)) == (4,5,6) + assert sequence([(1,2),(2,3),(4,5)]) == [(1,2),(2,3),(4,5)] + assert sequence(([1,2],[3,4],[5,6])) == ([1,2],[3,4],[5,6]) def test_removeall_list(): assert removeall(4, []) == [] diff --git a/utils.py b/utils.py index ab6aa1032..a787ce506 100644 --- a/utils.py +++ b/utils.py @@ -18,9 +18,9 @@ def sequence(iterable): - """Coerce iterable to sequence, if it is not already one.""" + """Converts iterable to sequence, if it is not already one.""" return (iterable if isinstance(iterable, collections.abc.Sequence) - else tuple(iterable)) + else tuple([iterable])) def removeall(item, seq): From 2fa63a944ec746247c625cd9431a7394670c6280 Mon Sep 17 00:00:00 2001 From: sagar-sehgal Date: Fri, 25 Jan 2019 19:48:02 +0530 Subject: [PATCH 2/2] updated according to the PEP style --- tests/test_utils.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/test_utils.py b/tests/test_utils.py index 9a2139c9b..a7423257a 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -5,11 +5,11 @@ def test_sequence(): assert sequence(1) == (1,) assert sequence("helloworld") == "helloworld" - assert sequence({"hello":4,"world":5}) == ({"hello":4,"world":5},) - assert sequence([1,2,3]) == [1,2,3] - assert sequence((4,5,6)) == (4,5,6) - assert sequence([(1,2),(2,3),(4,5)]) == [(1,2),(2,3),(4,5)] - assert sequence(([1,2],[3,4],[5,6])) == ([1,2],[3,4],[5,6]) + assert sequence({"hello":4, "world":5}) == ({"hello":4, "world":5},) + assert sequence([1, 2, 3]) == [1, 2, 3] + assert sequence((4, 5, 6)) == (4, 5, 6) + assert sequence([(1, 2),(2, 3),(4, 5)]) == [(1, 2), (2, 3),(4, 5)] + assert sequence(([1, 2],[3, 4],[5, 6])) == ([1, 2], [3, 4],[5, 6]) def test_removeall_list(): assert removeall(4, []) == []