diff options
author | Marcus Müller <mmueller@gnuradio.org> | 2019-04-21 16:19:21 +0200 |
---|---|---|
committer | Marcus Müller <mmueller@gnuradio.org> | 2019-04-21 17:48:55 +0200 |
commit | ee1bef43e92a3d517a3310848c9eebaf18dfa329 (patch) | |
tree | 31b00aa57e91ae635357adcadbd7494d30685e0e | |
parent | cbe60a36717f5d26b5eee6cc87ae4394cebbf427 (diff) |
modtool core: Don't import CLI functionality unless CLI is used
This allows usage of scripted modtool on systems without click
installed.
Only with this, headless unit testing can be done without installing
click.
-rw-r--r-- | gr-utils/python/modtool/core/base.py | 2 | ||||
-rw-r--r-- | gr-utils/python/modtool/core/disable.py | 3 | ||||
-rw-r--r-- | gr-utils/python/modtool/core/rm.py | 3 |
3 files changed, 5 insertions, 3 deletions
diff --git a/gr-utils/python/modtool/core/base.py b/gr-utils/python/modtool/core/base.py index 5d133892e6..f47fdd5ce6 100644 --- a/gr-utils/python/modtool/core/base.py +++ b/gr-utils/python/modtool/core/base.py @@ -33,7 +33,6 @@ from types import SimpleNamespace from gnuradio import gr from ..tools import get_modname, SCMRepoFactory -from ..cli import setup_cli_logger logger = logging.getLogger('gnuradio.modtool') @@ -90,6 +89,7 @@ class ModTool(object): self.info['yes'] = True else: self.info['yes'] = kwargs.get('yes', False) + from ..cli import setup_cli_logger setup_cli_logger(logger) if not type(self).__name__ in ['ModToolInfo', 'ModToolNewModule']: diff --git a/gr-utils/python/modtool/core/disable.py b/gr-utils/python/modtool/core/disable.py index ad1f78ef91..d9b3188c67 100644 --- a/gr-utils/python/modtool/core/disable.py +++ b/gr-utils/python/modtool/core/disable.py @@ -29,7 +29,6 @@ import re import sys import logging -from ..cli import cli_input from ..tools import CMakeFileEditor from .base import ModTool, ModToolException @@ -131,6 +130,8 @@ class ModToolDisable(ModTool): # This portion will be covered by the CLI if not self.cli: self.validate() + else: + from ..cli import cli_input # List of special rules: 0: subdir, 1: filename re match, 2: callback special_treatments = ( ('python', r'qa.+py$', _handle_py_qa), diff --git a/gr-utils/python/modtool/core/rm.py b/gr-utils/python/modtool/core/rm.py index 688aa59835..80011b15ba 100644 --- a/gr-utils/python/modtool/core/rm.py +++ b/gr-utils/python/modtool/core/rm.py @@ -31,7 +31,6 @@ import glob import logging from ..tools import remove_pattern_from_file, CMakeFileEditor -from ..cli import cli_input from .base import ModTool, ModToolException logger = logging.getLogger(__name__) @@ -57,6 +56,8 @@ class ModToolRemove(ModTool): # This portion will be covered by the CLI if not self.cli: self.validate() + else: + from ..cli import cli_input def _remove_cc_test_case(filename=None, ed=None): """ Special function that removes the occurrences of a qa*.cc file from the CMakeLists.txt. """ |