summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <git@the-compiler.org>2016-07-26 12:06:42 +0200
committerFlorian Bruhin <git@the-compiler.org>2016-07-26 12:06:42 +0200
commit3ea6d4c52702dae1fe97082dbdef394ca7dbfa38 (patch)
tree611b77992577eff4208927d18f4a1fdfea89c393
parent49977a32c4dbe10309b76239b51b4b734c610cf0 (diff)
downloadqutebrowser-3ea6d4c52702dae1fe97082dbdef394ca7dbfa38.tar.gz
qutebrowser-3ea6d4c52702dae1fe97082dbdef394ca7dbfa38.zip
Add KeyConfigStub.get_reverse_bindings_for
-rw-r--r--tests/helpers/stubs.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/tests/helpers/stubs.py b/tests/helpers/stubs.py
index ba7491897..280a1c39d 100644
--- a/tests/helpers/stubs.py
+++ b/tests/helpers/stubs.py
@@ -32,7 +32,7 @@ from PyQt5.QtWidgets import QCommonStyle, QLineEdit
from qutebrowser.browser import browsertab
from qutebrowser.browser.webkit import history
from qutebrowser.config import configexc
-from qutebrowser.utils import usertypes
+from qutebrowser.utils import usertypes, utils
from qutebrowser.mainwindow import mainwindow
@@ -471,6 +471,17 @@ class KeyConfigStub:
def set_bindings_for(self, section, bindings):
self.bindings[section] = bindings
+ def get_reverse_bindings_for(self, section):
+ """Get a dict of commands to a list of bindings for the section."""
+ cmd_to_keys = collections.defaultdict(list)
+ for key, cmd in self.bindings[section].items():
+ # put special bindings last
+ if utils.is_special_key(key):
+ cmd_to_keys[cmd].append(key)
+ else:
+ cmd_to_keys[cmd].insert(0, key)
+ return cmd_to_keys
+
class UrlMarkManagerStub(QObject):