summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntony MECHIN <antony.mechin@docker.com>2018-09-27 13:58:38 +0200
committerAntony MECHIN <antony.mechin@docker.com>2018-09-27 14:17:32 +0200
commit5b9b519e8a7c6441dcd980405c3b105944ff5a1a (patch)
tree807b8f94504520e1e4b53d099f551101f389ba1b
parentbf46a6cc600828c3aab55ed51a267bfb0fc0c35f (diff)
utils: Fix typo in unique_everseen.
Signed-off-by: Antony MECHIN <antony.mechin@docker.com>
-rw-r--r--compose/utils.py5
-rw-r--r--tests/unit/utils_test.py6
2 files changed, 7 insertions, 4 deletions
diff --git a/compose/utils.py b/compose/utils.py
index b9b6ab9b..72e6ced1 100644
--- a/compose/utils.py
+++ b/compose/utils.py
@@ -176,6 +176,7 @@ def unique_everseen(iterable, key=lambda x: x):
"List unique elements, preserving order. Remember all elements ever seen."
seen = set()
for element in iterable:
- if key(element) not in seen:
- seen.add(element)
+ unique_key = key(element)
+ if unique_key not in seen:
+ seen.add(unique_key)
yield element
diff --git a/tests/unit/utils_test.py b/tests/unit/utils_test.py
index 186b6b14..21b88d96 100644
--- a/tests/unit/utils_test.py
+++ b/tests/unit/utils_test.py
@@ -72,5 +72,7 @@ class TestParseBytes(object):
class TestMoreItertools(object):
def test_unique_everseen(self):
- assert list(utils.unique_everseen([2, 1, 2, 1])) == [2, 1]
- assert list(utils.unique_everseen([2, 1, 2, 1], hash)) == [2, 1]
+ unique = utils.unique_everseen
+ assert list(unique([2, 1, 2, 1])) == [2, 1]
+ assert list(unique([2, 1, 2, 1], hash)) == [2, 1]
+ assert list(unique([2, 1, 2, 1], lambda x: 'key_%s' % x)) == [2, 1]