Skip to content

Commit 8752066

Browse files
authored
Merge pull request #25 from desultory/dev
update handle_plural to handle sets
2 parents f4b2c9e + 6daf548 commit 8752066

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

src/zenlib/util/handle_plural.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
__author__ = "desultory"
2-
__version__ = "2.2.0"
2+
__version__ = "2.2.1"
33

44
from collections.abc import KeysView, ValuesView
55

@@ -27,6 +27,10 @@ def log(msg, level=log_level):
2727
log("Expanding list: %s" % focus_arg)
2828
for item in focus_arg:
2929
function(self, *(other_args + (item,)), **kwargs)
30+
elif isinstance(focus_arg, set):
31+
log("Expanding set: %s" % focus_arg)
32+
for item in focus_arg:
33+
function(self, *(other_args + (item,)), **kwargs)
3034
elif isinstance(focus_arg, ValuesView):
3135
log("Expanding dict values: %s" % focus_arg)
3236
for value in focus_arg:

tests/test_handle_plural.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,16 @@ def test_list(self):
3434
self.assertEqual(self._test_plural_ints_with_kwarg(extra_arg, test_list), None)
3535
self.assertEqual(self._test_data, sum(test_list))
3636

37+
def test_set(self):
38+
self._test_data = 0
39+
test_set = {1, 2, 3, 4}
40+
extra_arg = 'a'
41+
self.assertEqual(self._test_plural_ints(extra_arg, test_set), None)
42+
self.assertEqual(self._test_data, sum(test_set))
43+
self._test_data = 0
44+
self.assertEqual(self._test_plural_ints_with_kwarg(extra_arg, test_set), None)
45+
self.assertEqual(self._test_data, sum(test_set))
46+
3747
def test_setting_kwarg(self):
3848
self._test_data = 0
3949
test_list = [1, 2, 3, 4]

0 commit comments

Comments
 (0)