diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2021-11-13 08:09:19 -0500 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2021-11-13 08:09:19 -0500 |
commit | ffb064bae38a538b45b97944aa7eb735f881b0a6 (patch) | |
tree | 96b224feb81f2d8ec5c2674fa2270f6c36923e3c /coverage/cmdline.py | |
parent | edb0e698a7165b69bd5f19908d365b398bf4118f (diff) | |
download | python-coveragepy-git-ffb064bae38a538b45b97944aa7eb735f881b0a6.tar.gz |
refactor: rejigger 'debug data' codenedbat/smarter-debug-data
Diffstat (limited to 'coverage/cmdline.py')
-rw-r--r-- | coverage/cmdline.py | 41 |
1 files changed, 22 insertions, 19 deletions
diff --git a/coverage/cmdline.py b/coverage/cmdline.py index e996ffff..92c51a7a 100644 --- a/coverage/cmdline.py +++ b/coverage/cmdline.py @@ -601,8 +601,8 @@ class CoverageScript: elif options.action == "combine": if options.append: self.coverage.load() - data_dirs = args or None - self.coverage.combine(data_dirs, strict=True, keep=bool(options.keep)) + data_paths = args or None + self.coverage.combine(data_paths, strict=True, keep=bool(options.keep)) self.coverage.save() return OK @@ -786,23 +786,7 @@ class CoverageScript: for line in info_formatter(sys_info): print(f" {line}") elif info == 'data': - self.coverage.load() - data = self.coverage.get_data() - print(info_header("data")) - print(f"path: {data.data_filename()}") - if data: - print(f"has_arcs: {data.has_arcs()!r}") - summary = line_counts(data, fullpath=True) - filenames = human_sorted(summary.keys()) - print(f"\n{len(filenames)} files:") - for f in filenames: - line = f"{f}: {summary[f]} lines" - plugin = data.file_tracer(f) - if plugin: - line += f" [{plugin}]" - print(line) - else: - print("No data collected") + self.do_debug_data() elif info == 'config': print(info_header("config")) config_info = self.coverage.config.__dict__.items() @@ -817,6 +801,25 @@ class CoverageScript: return OK + def do_debug_data(self): + self.coverage.load() + data = self.coverage.get_data() + print(info_header("data")) + print(f"path: {data.data_filename()}") + if data: + print(f"has_arcs: {data.has_arcs()!r}") + summary = line_counts(data, fullpath=True) + filenames = human_sorted(summary.keys()) + print(f"\n{len(filenames)} files:") + for f in filenames: + line = f"{f}: {summary[f]} lines" + plugin = data.file_tracer(f) + if plugin: + line += f" [{plugin}]" + print(line) + else: + print("No data collected") + def unshell_list(s): """Turn a command-line argument into a list.""" |