diff options
author | Chris Rose <chrisros@amazon.com> | 2014-02-03 11:49:19 -0800 |
---|---|---|
committer | Chris Rose <chrisros@amazon.com> | 2014-02-03 11:49:19 -0800 |
commit | b84dd85957bff7422c7b0a54c7836c091018ec16 (patch) | |
tree | 0db8e013fb4315a682790145da2a9c3b515c050c /coverage/control.py | |
parent | 47306666e44f0c83c5f3b64ea5cedb1d27657d83 (diff) | |
download | python-coveragepy-b84dd85957bff7422c7b0a54c7836c091018ec16.tar.gz |
Resolve #285 - precreate the XML report's output directory if it does
not exist yet.
Diffstat (limited to 'coverage/control.py')
-rw-r--r-- | coverage/control.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/coverage/control.py b/coverage/control.py index d5e2c6f..5c126b6 100644 --- a/coverage/control.py +++ b/coverage/control.py @@ -692,6 +692,14 @@ class coverage(object): if self.config.xml_output == '-': outfile = sys.stdout else: + # ensure that the output directory is created; done here + # because this report pre-opens the output + # file. HTMLReport does this using the Report plumbing + # because its task is more complex, being multiple + # files. + output_dir = os.path.dirname(self.config.xml_output) + if output_dir and not os.path.isdir(output_dir): + os.makedirs(output_dir) outfile = open(self.config.xml_output, "w") file_to_close = outfile try: |