From e3e001fb998b8510a2e7ff07e23161fabdf759cc Mon Sep 17 00:00:00 2001 From: Hiroshi Miura Date: Sun, 24 Nov 2019 13:34:09 +0900 Subject: [PATCH] Fix error when no patchlevel version number exist Signed-off-by: Hiroshi Miura --- aqt/cli.py | 9 +++------ aqt/settings.py | 4 ++-- tests/test_cli.py | 8 ++++++++ 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/aqt/cli.py b/aqt/cli.py index 738e022..0d2418d 100644 --- a/aqt/cli.py +++ b/aqt/cli.py @@ -107,13 +107,10 @@ class Cli(): def _check_modules_arg(self, qt_version, modules): if modules is None: return True - result = True available = self.settings.available_modules(qt_version) - for m in modules: - if m not in available: - result = False - break - return result + if available is None: + return False + return all([m in available for m in modules]) def run_install(self, args): arch = args.arch diff --git a/aqt/settings.py b/aqt/settings.py index 3a54962..76d0ef9 100644 --- a/aqt/settings.py +++ b/aqt/settings.py @@ -74,8 +74,8 @@ class Settings(object): :rtype: List[str] """ modules = self._combinations['modules'] - major, minor, _ = qt_version.split('.') - version = "{}.{}".format(major, minor) + versions = qt_version.split('.') + version = "{}.{}".format(versions[0], versions[1]) result = None for record in modules: if record["qt_version"] == version: diff --git a/tests/test_cli.py b/tests/test_cli.py index cbb638a..6436d67 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -24,3 +24,11 @@ def test_cli_help(capsys): cli.run(["help"]) out, err = capsys.readouterr() assert out == expected + + +def test_cli_check_module(): + cli = aqt.cli.Cli() + assert cli._check_modules_arg('5.11.3', ['qtcharts', 'qtwebengine']) + assert not cli._check_modules_arg('5.7', ['not_exist']) + assert cli._check_modules_arg('5.14.0', None) + assert not cli._check_modules_arg('5.15.0', ["Unknown"])