Handle empty command in CommandRunner.parse_all
Sicne we now call self._get_alias there, we also need to make sure it's not an empty string before that. Introduced in #1577. Fixes #1690.
This commit is contained in:
parent
be609d5779
commit
9ff006746f
@ -119,6 +119,9 @@ class CommandRunner(QObject):
|
|||||||
Yields:
|
Yields:
|
||||||
ParseResult tuples.
|
ParseResult tuples.
|
||||||
"""
|
"""
|
||||||
|
if not text:
|
||||||
|
raise cmdexc.NoSuchCommandError("No command given")
|
||||||
|
|
||||||
if aliases:
|
if aliases:
|
||||||
text = self._get_alias(text, text)
|
text = self._get_alias(text, text)
|
||||||
|
|
||||||
|
@ -53,6 +53,15 @@ class TestCommandRunner:
|
|||||||
with pytest.raises(cmdexc.NoSuchCommandError):
|
with pytest.raises(cmdexc.NoSuchCommandError):
|
||||||
list(cr.parse_all("alias_name"))
|
list(cr.parse_all("alias_name"))
|
||||||
|
|
||||||
|
def test_parse_empty_with_alias(self):
|
||||||
|
"""An empty command should not crash.
|
||||||
|
|
||||||
|
See https://github.com/The-Compiler/qutebrowser/issues/1690
|
||||||
|
"""
|
||||||
|
cr = runners.CommandRunner(0)
|
||||||
|
with pytest.raises(cmdexc.NoSuchCommandError):
|
||||||
|
list(cr.parse_all(''))
|
||||||
|
|
||||||
def test_parse_with_count(self):
|
def test_parse_with_count(self):
|
||||||
"""Test parsing of commands with a count."""
|
"""Test parsing of commands with a count."""
|
||||||
cr = runners.CommandRunner(0)
|
cr = runners.CommandRunner(0)
|
||||||
|
Loading…
Reference in New Issue
Block a user