summaryrefslogtreecommitdiff
path: root/coverage
diff options
context:
space:
mode:
Diffstat (limited to 'coverage')
-rw-r--r--coverage/parser.py6
-rw-r--r--coverage/results.py5
2 files changed, 4 insertions, 7 deletions
diff --git a/coverage/parser.py b/coverage/parser.py
index 010cd73a..6332f637 100644
--- a/coverage/parser.py
+++ b/coverage/parser.py
@@ -1,6 +1,6 @@
"""Code parsing for Coverage."""
-import dis, re, sys, token, tokenize
+import collections, dis, re, sys, token, tokenize
from coverage.backward import StringIO
from coverage.backward import open_source, range # pylint: disable=W0622
@@ -242,7 +242,7 @@ class CodeParser(object):
"""
excluded_lines = self.first_lines(self.excluded)
- exit_counts = {}
+ exit_counts = collections.defaultdict(int)
for l1, l2 in self.arcs():
if l1 < 0:
# Don't ever report -1 as a line number
@@ -253,8 +253,6 @@ class CodeParser(object):
if l2 in excluded_lines:
# Arcs to excluded lines shouldn't count.
continue
- if l1 not in exit_counts:
- exit_counts[l1] = 0
exit_counts[l1] += 1
# Class definitions have one extra exit, so remove one for each:
diff --git a/coverage/results.py b/coverage/results.py
index bfd9e52e..e6475afb 100644
--- a/coverage/results.py
+++ b/coverage/results.py
@@ -1,5 +1,6 @@
"""Results of coverage measurement."""
+import collections
import os
from coverage.backward import iitems
@@ -158,11 +159,9 @@ class Analysis(object):
"""
missing = self.arcs_missing()
branch_lines = set(self.branch_lines())
- mba = {}
+ mba = collections.defaultdict(list)
for l1, l2 in missing:
if l1 in branch_lines:
- if l1 not in mba:
- mba[l1] = []
mba[l1].append(l2)
return mba