diff --git a/tests/unit/keyinput/key_data.py b/tests/unit/keyinput/key_data.py index d9111d9aa..f967389b1 100644 --- a/tests/unit/keyinput/key_data.py +++ b/tests/unit/keyinput/key_data.py @@ -17,14 +17,28 @@ # You should have received a copy of the GNU General Public License # along with qutebrowser. If not, see . -import attr +# pylint: disable=line-too-long -from PyQt5.QtCore import Qt + +"""Data used by test_keyutils.py to test all keys.""" + + +import attr @attr.s class Key: + """A key with expected values. + + Attributes: + attribute: The name of the Qt::Key attribute ('Foo' -> Qt.Key_Foo) + name: The name returned by str(KeyInfo) with that key. + text: The text returned by KeyInfo.text(). + uppertext: The text returned by KeyInfo.text() with shift. + member: Filled by the test fixture, the numeric value. + """ + attribute = attr.ib() name = attr.ib(None) # default: name == attribute text = attr.ib('') @@ -289,7 +303,7 @@ KEYS = [ ### Korean keyboard support ### - ### In fact, many Korean users need only 2 keys, Key_Hangul and + ### In fact, many users from Korea need only 2 keys, Key_Hangul and ### Key_Hangul_Hanja. But rest of the keys are good for future. Key('Hangul'), # Hangul start/stop(toggle), diff --git a/tests/unit/keyinput/test_basekeyparser.py b/tests/unit/keyinput/test_basekeyparser.py index a32009390..5da4efa9b 100644 --- a/tests/unit/keyinput/test_basekeyparser.py +++ b/tests/unit/keyinput/test_basekeyparser.py @@ -165,15 +165,10 @@ class TestSpecialKeys: Qt.Key_A, (Qt.ControlModifier | Qt.AltModifier))) assert not keyparser.execute.called - @pytest.mark.skip(reason='unneeded?') - def test_keychain(self, fake_keyevent_factory, keyparser): - keyparser.handle(fake_keyevent_factory(Qt.Key_B)) - keyparser.handle(fake_keyevent_factory(Qt.Key_A)) - assert not keyparser.execute.called - - def test_no_binding(self, monkeypatch, fake_keyevent_factory, keyparser): + def test_only_modifiers(self, monkeypatch, fake_keyevent_factory, + keyparser): monkeypatch.setattr(keyutils.KeyInfo, '__str__', lambda _self: '') - keyparser.handle(fake_keyevent_factory(Qt.Key_A, Qt.NoModifier)) + keyparser.handle(fake_keyevent_factory(Qt.Key_Shift, Qt.NoModifier)) assert not keyparser.execute.called def test_mapping(self, config_stub, fake_keyevent_factory, keyparser): diff --git a/tests/unit/keyinput/test_keyutils.py b/tests/unit/keyinput/test_keyutils.py index b714cf77b..94b18eb57 100644 --- a/tests/unit/keyinput/test_keyutils.py +++ b/tests/unit/keyinput/test_keyutils.py @@ -118,8 +118,8 @@ class TestKeyEventToString: ('xyz', keyutils.KeySequence(Qt.Key_X, Qt.Key_Y, Qt.Key_Z)), ('', keyutils.KeySequence(Qt.ControlModifier | Qt.Key_X, Qt.MetaModifier | Qt.Key_Y)), - ('', keyutils.KeyParseError), - ('\U00010000', keyutils.KeyParseError), + ('', keyutils.KeyParseError), + ('\U00010000', keyutils.KeyParseError), ]) def test_parse(keystr, expected): if expected is keyutils.KeyParseError: