summaryrefslogtreecommitdiff
path: root/coverage/collector.py
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2018-09-23 20:21:42 -0400
committerNed Batchelder <ned@nedbatchelder.com>2018-09-23 20:21:42 -0400
commit9a0f9e19ba43887d53fdc53f015f00148e9ba2b9 (patch)
tree1ceb0f3c26860827218197da7700250996ba81c3 /coverage/collector.py
parent106828c2cc8bbce1e5fb31c6a89ea3ac025225c1 (diff)
downloadpython-coveragepy-git-9a0f9e19ba43887d53fdc53f015f00148e9ba2b9.tar.gz
Make static and dynamic contexts work together
Diffstat (limited to 'coverage/collector.py')
-rw-r--r--coverage/collector.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/coverage/collector.py b/coverage/collector.py
index 686d4a7e..4e7058a0 100644
--- a/coverage/collector.py
+++ b/coverage/collector.py
@@ -373,7 +373,13 @@ class Collector(object):
def switch_context(self, new_context):
"""Switch to a new dynamic context."""
self.flush_data()
- self.covdata.set_context(new_context)
+ if self.static_context:
+ context = self.static_context
+ if new_context:
+ context += ":" + new_context
+ else:
+ context = new_context
+ self.covdata.set_context(context)
def cached_abs_file(self, filename):
"""A locally cached version of `abs_file`."""