From 32d8c0665ea044f9682a89633d75442d1a4d2dc4 Mon Sep 17 00:00:00 2001 From: Ned Batchelder Date: Thu, 5 Dec 2019 16:37:48 -0500 Subject: [PATCH] Fix the context tests CoverageData.lines() returns a list, but in no guaranteed order. Set-ify everything to get the correct comparison. --- tests/test_pytest_cov.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/test_pytest_cov.py b/tests/test_pytest_cov.py index e79e9aa..3be8278 100644 --- a/tests/test_pytest_cov.py +++ b/tests/test_pytest_cov.py @@ -1934,12 +1934,12 @@ def test_cov_and_no_cov(testdir): def find_labels(text, pattern): - all_labels = collections.defaultdict(list) + all_labels = collections.defaultdict(set) lines = text.splitlines() for lineno, line in enumerate(lines, start=1): labels = re.findall(pattern, line) for label in labels: - all_labels[label].append(lineno) + all_labels[label].add(lineno) return all_labels @@ -2007,7 +2007,7 @@ def test_contexts(testdir, opts): if context == '': continue data.set_query_context(context) - actual = data.lines(test_context_path) + actual = set(data.lines(test_context_path)) assert line_data[label] == actual, "Wrong lines for context {!r}".format(context)