Fix error when no patchlevel version number exist

Signed-off-by: Hiroshi Miura <miurahr@linux.com>
This commit is contained in:
Hiroshi Miura
2019-11-24 13:34:09 +09:00
parent dddf1d8ada
commit e3e001fb99
3 changed files with 13 additions and 8 deletions

View File

@@ -107,13 +107,10 @@ class Cli():
def _check_modules_arg(self, qt_version, modules): def _check_modules_arg(self, qt_version, modules):
if modules is None: if modules is None:
return True return True
result = True
available = self.settings.available_modules(qt_version) available = self.settings.available_modules(qt_version)
for m in modules: if available is None:
if m not in available: return False
result = False return all([m in available for m in modules])
break
return result
def run_install(self, args): def run_install(self, args):
arch = args.arch arch = args.arch

View File

@@ -74,8 +74,8 @@ class Settings(object):
:rtype: List[str] :rtype: List[str]
""" """
modules = self._combinations['modules'] modules = self._combinations['modules']
major, minor, _ = qt_version.split('.') versions = qt_version.split('.')
version = "{}.{}".format(major, minor) version = "{}.{}".format(versions[0], versions[1])
result = None result = None
for record in modules: for record in modules:
if record["qt_version"] == version: if record["qt_version"] == version:

View File

@@ -24,3 +24,11 @@ def test_cli_help(capsys):
cli.run(["help"]) cli.run(["help"])
out, err = capsys.readouterr() out, err = capsys.readouterr()
assert out == expected 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"])