From 31f73086c934c3b90f7a331cbc39934533a7b9a9 Mon Sep 17 00:00:00 2001 From: Tomas Babej Date: Sat, 4 Apr 2015 11:27:54 +0200 Subject: [PATCH] coverage: Measure more properly by invoking the measurements in a separate python file --- ftplugin/vimwiki.vim | 5 +++++ taskwiki/coverage.py | 16 ++++++++++++++++ taskwiki/taskwiki.py | 14 -------------- 3 files changed, 21 insertions(+), 14 deletions(-) create mode 100644 taskwiki/coverage.py diff --git a/ftplugin/vimwiki.vim b/ftplugin/vimwiki.vim index e4ac42a..18da1b3 100644 --- a/ftplugin/vimwiki.vim +++ b/ftplugin/vimwiki.vim @@ -1,4 +1,9 @@ let s:plugin_path = escape(expand(':p:h:h'), '\') + +if exists("g:taskwiki_measure_coverage") + execute 'pyfile ' . s:plugin_path . '/taskwiki/coverage.py' +endif + execute 'pyfile ' . s:plugin_path . '/taskwiki/taskwiki.py' augroup taskwiki diff --git a/taskwiki/coverage.py b/taskwiki/coverage.py new file mode 100644 index 0000000..d7d4511 --- /dev/null +++ b/taskwiki/coverage.py @@ -0,0 +1,16 @@ +import vim +import os + +# Start measuring coverage if in testing +if vim.vars.get('taskwiki_measure_coverage'): + import atexit + import coverage + coverage_path = os.path.expanduser('~/taskwiki-coverage/.coverage.{0}'.format(os.getpid())) + cov = coverage.coverage(data_file=coverage_path) + cov.start() + + def save_coverage(): + cov.stop() + cov.save() + + atexit.register(save_coverage) diff --git a/taskwiki/taskwiki.py b/taskwiki/taskwiki.py index 6c804f1..b48bca9 100644 --- a/taskwiki/taskwiki.py +++ b/taskwiki/taskwiki.py @@ -3,20 +3,6 @@ import os import sys import vim # pylint: disable=F0401 -# Start measuring coverage if in testing -if vim.vars.get('taskwiki_measure_coverage'): - import atexit - import coverage - coverage_path = os.path.expanduser('~/taskwiki-coverage/.coverage.{0}'.format(os.getpid())) - cov = coverage.coverage(data_file=coverage_path) - cov.start() - - def save_coverage(): - cov.stop() - cov.save() - - atexit.register(save_coverage) - from tasklib.task import TaskWarrior # Insert the taskwiki on the python path